python - 将字典值从元组转换为列表(python)
问题描述
所以我有一个data.txt
包含汽车信息的文件:
汽车|价格|RPM
丰田|21,000|3,600
本田|19,000|4,000
通过将此数据文件传递给函数createCarDictionary
,我能够创建一个字典,该字典将汽车品牌创建为键,并将值作为 txt 文件中存储为元组的剩余信息:
dict1 = {}
def createCarDictionary(datafile):
for line in datafile.splitlines():
key, value, value2 = map(str.strip, line.split('|'))
dict1[key] = value, value2
return dict1
datafile = open('data.txt', 'r').read()
createCarDictionary(datafile)
print(dict1)
输出
{'CAR': ('PRICE', 'RPM'), 'TOYOTA': ('21,000', '3,600'), 'HONDA': ('19,000', '4,000')}
所以我的问题是:我必须在函数中添加什么以1)删除数字中的逗号和2)将元组值转换为列表,以便我以后可以操作它们。
解决方案
您可以简单地用括号将您的值括起来,使它们成为 alist
而不是tuple
,并用于replace()
从每一行中删除所有 ','。
dict1 = {}
def createCarDictionary(datafile):
for line in datafile.splitlines():
line = line.replace(',', '')
key, value, value2 = map(str.strip, line.split('|'))
dict1[key] = [value, value2]
return dict1
datafile = open('data.txt', 'r').read()
createCarDictionary(datafile)
print(dict1)
输出:
{'HONDA': ['19000', '4000'], 'TOYOTA': ['21000', '3600'], 'CAR': ['PRICE', 'RPM']}
推荐阅读
- javascript - 选中时从 javascript 中的逗号分隔字符串中删除数字为假
- c - 如何通过 C 中的 for 循环定义多个整数变量?
- ssh - SSH 密钥转移到另一台机器以连接到 adhoc 服务器?
- c# - 如何从具有 AAD 设置的 asp.net mvc 应用程序调用外部网站
- javascript - 在 JS 对象图中查找节点之间的路径
- python - 在现有的 pandas df 中添加缺少观测值的变量,而不会丢失较大 df 中的观测值
- python - Django:列表索引超出范围
- flutter - 颤振:未为“未来”类定义运算符“[]”
- spring - 由 BeanInstantiationException 引起的 org.springframework.beans.factory.BeanCreationException
- javascript - 如何在 Bootstrap 4 .btn-group-toggle 上显示 JavaScript 验证错误