为了账号安全,请及时绑定邮箱和手机立即绑定

如何在另一个函数中使用一个函数的数据?

如何在另一个函数中使用一个函数的数据?

Helenr 2024-01-16 10:35:03
我是初学者,有一个与将函数数据与其他函数一起使用相关的问题。假设一个函数my_list生成一个列表和一个子列表。我想知道如何访问该函数生成的列表的子列表中的项目,并使用这些数字在另一个函数中计算它们的总和。我尝试过类似的事情def compute_sum(myNewlist): #myNewList is the list generated by the other function#     for i in myNewList:         addup += i 但我确实对 python 还不够熟悉,无法思考如何做到这一点。我想我要问的是如何将子列表中的元素调用到另一个函数?编辑 - 只需将代码放在这里,以便回复者有更多的理解!fyle = input('Enter the file name you want to process: ')def read_data(fyle):    with open(fyle) as file:                for line in fyle:            lne = [line.strip().split() for line in open(fyle).readlines()]            newlist = [[elem[1], elem[0], elem[2]] for elem in lne]                         print(newlist)        read_data(fyle)def compute_sum(newlist):          ???编辑 2 - 列表也看起来像mylist = [[Smith, Bob, 18], [Jorgen, Peter, 14]]- 为此,我希望提取并添加数字,而不是字符串
查看完整描述

2 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

这是代码重写的示例,我认为它演示了您所要求的内容:


fyle = input('Enter the file name you want to process: ')


def read_data(fyle):

    lne = [line.strip().split() for line in open(fyle).readlines()]

    newlist = [[elem[1], elem[0], elem[2]] for elem in lne]

    return newlist


def compute_sum(newlist):

    s = sum([int(x[0]) for x in newlist])

    return s



list = read_data(fyle)

sum = compute_sum(list)

print(sum)

数据文件/tmp/data.txt:


line1_item1 10 line1_item3

line2_item1 20 line2_item3

line3_item1 30 line3_item3

结果:


Enter the file name you want to process: /tmp/data.txt

60


查看完整回答
反对 回复 2024-01-16
?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

下面的代码应该可以计算总和。正如您在上面的帖子中提到的,我考虑过 mylist = [[Smith, Bob, 18], [Jorgen, Peter, 14]]。


def compute_sum(new_list):

     sum=0

     for item in new_list:

          sum=sum+int(item[2])

     #print(sum)

     return sum


查看完整回答
反对 回复 2024-01-16
  • 2 回答
  • 0 关注
  • 96 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信