gpt4 book ai didi

python - 将 return 语句作为另一个函数的参数传递

转载 作者:行者123 更新时间:2023-11-28 22:00:09 25 4
gpt4 key购买 nike

我已经查看了其中的 10 个答案,但找不到答案,也许我问错了问题,但我想做的是获取在 fileToDict 中创建的字典,并将其用作 dictValueTotal 的参数以添加所有字典的值并返回该值(将在第三个函数中使用)。是的,这确实是家庭作业,但我想了解它,因为我是 python 的新手并且真的不知道如何将返回值传递给另一个函数并且无法在线或在我们正在使用的书中找到答案我不想为它创建一个类,因为我们没有在类里面介绍它(看看我在那里做了什么?)。提前致谢!

收到错误:首先我没有定义全局变量 'd',所以我添加了 dictionary = fileToDict("words1.txt") 行,但现在我收到错误 TypeError: 'builtin_function_or_method' object is not iterable

差点忘了我的 words1.txt 看起来像这样,每个字符串/整数在单独的一行上: 231049254

cat 120935
hat 910256
free 10141

one 9503490
we 102930
was 20951
#

going 48012
to 1029401
program 10293012
he 5092309

这是操作它的代码:

import sys

def dictValueTotal (dictionary):
"""dictValueTotal takes in a dictionary and outputs the sum of all the values of the different keys in the input dictionary"""
valueTotal = sum(dictionary.values)
return valueTotal


def fileToDict (inFile):
"""takes a name of a file as input and outputs a dictionary containing the contents of that file"""
fileIn = open(inFile, "r") #Open a file
d = {} #create a dictionary
for line in fileIn:
line = line.strip() #remove whitespace
if line == "": #disregard empty strings
continue
if line[0] == '#': #disregard lines starting with #
continue
print line #debugging purposes
line = line.split() #remove duplicated spaces
print line #debugging purposes
line[1] = int(line[1])
print line #debugging purposes
key = line[0]
value = line[1]
d[key] = value
print d
return d
def main():
fileToDict("words1.txt")
dictionary = fileToDict("words1.txt")
dictValueTotal(dictionary)


main()

最佳答案

values 是一种方法。你需要调用它。使用 dictionary.values()(注意括号),而不是 dictionary.values

关于python - 将 return 语句作为另一个函数的参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15398652/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com