python - 制作美国出生列表:如何在列表中将字符串设为 int
问题描述
def read_csv(filename):
string_data = open(filename).read()
string_list = string_data.split("\n")[1:]
final_list = []
for row in string_list:
string_fields = row.split(",")
int_fields = []
for value in string_fields:
int_fields.append(value)
final_list.append(int_fields)
return final_list
cdc_list = read_csv("US_births_1994-2003_CDC_NCHS.csv")
cdc_list[0:3]
当我运行这段代码时,我得到了这样的结果:
[['1994', '1', '1', '6', '8096'], ['1994', '1', '2', '7', '7772'], ['1994', '1', '3', '1', '10142']]
但我想要这样的结果:
[[1994, 1, 1, 6, 8096], [1994, 1, 2, 7, 7772], [1994, 1, 3, 1, 10142]]
你能帮我解决这个问题吗?
解决方案
以下列表推导将 的子列表中的字符串转换cdc_list
为整数:
[list(map(int, s)) for s in cdc_list]
推荐阅读
- github - 列出所有请求的评论
- search - 如何在记事本++的窗口顶部显示找到的行
- java - ArrayList 索引中的换行符
- outlook - SharePoint 日历使用特定筛选器视图连接到 Outlook(审批工作流)
- sql - 根据组合的其他 2 列查询表中的 1 列
- quarkus - Quarkus - Optaplanner 调整算法
- javascript - Ember 3.25 BelongsTo not sideloading
- arrays - 数组维度必须与 Matlab 中的二进制数组运算匹配
- php - 在 wordpress 中的模板页面中不显示更改?
- javascript - 如何在页面加载之前创建欢迎动画屏幕?