python - 如何获取包含字符串的列表以将某些值表示为整数?
问题描述
我希望我的措辞正确,我是 python 和一般编码的新手。我有两组平均填充的两个列表。该列表代表家庭中的个人,第二个是他们的年龄。
adams = ['ben', 'susan', 'billy']
adamsage = [40, 38, 14]
smith = ['brooke', 'john', 'trent', 'sam']
smithage = [45, 46, 16, 15]
我试图弄清楚如何将家庭中的个人添加在一起,例如:
ben + susan + billy = 82
我还希望能够添加不同的组合,例如只是父母或孩子:
brooke + john + ben + susan = ...
也没有重叠的名称,所以我不必担心重复。我试过了:
adams = adamsage
print(int(float('ben')) + (int(float('susan')))
但我得到一个值错误。有没有办法做到这一点?
解决方案
好的。欢迎来到本站。好问题......你需要在这里学习一些关于数据结构的知识。你有两种方法可以做到这一点。下面的第二个更好,但两者都可以工作......
因此,您有 2 个按索引建立关系的列表。作为一般计划,您可以:
- 在第一个列表中查找名称的索引
- 使用相同的索引值从第二个列表中获取年龄
- 对感兴趣的名称重复此操作并保持总和
您可以使用该函数通过循环执行上述操作index()
来查找名称的索引。
您的替代方法是将数据移动到不同的数据结构中,该结构建立一对名称:年龄,或所谓的键:值关系。在 python 中,这是一个字典。然后,您可以在循环内的字典中按名称查找年龄并保持运行总数。这是更好的计划。
这足以继续吗?你熟悉字典和基本的循环结构吗?如果您遇到困难,请回复评论,我或其他人可以展示如何执行这些方法中的任何一种的基本步骤!
推荐阅读
- python - 在 deepin (debian) 下安装 libxcb 1.13
- file - 如何访问 Gatsby 中“file”或“allFiles”GraphQL 查询返回的文件的文本内容?
- docker - 如何在 OPEN-SHIFT (docker-image) 上安装 JIRA-SERVER
- java - 用于选择给定符号之间除字符之外的所有内容的正则表达式
- angular - 无法使用下拉列表中的搜索过滤器显示具有初始值的 mat-select
- sql - 将所有列取消透视(或替代)成行
- javascript - 逐类导入还是整个模块导入,哪个最好?
- css - 小屏时在正文后显示浮动侧边栏
- python - Python 3.6.7 - OpenCV(4.1.2) 模板匹配
- fortran - 声明 CHARACTER 变量时出错:这是 gfortran 错误还是我自己的错误?