首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取列表的int类型的输入

问获取列表的int类型的输入
EN

Stack Overflow用户
提问于 2020-01-25 02:42:25
回答 1查看 25关注 0票数 0

我尝试让用户输入一个向量,这样它就可以被加、减等。第一行是列表输入,但它将所有字符存储为字符串,包括括号和逗号。第三和第四行去掉了括号和逗号,留下了三个用户输入的数字作为字符串。

代码语言:javascript
复制
v = input('Input integers for a vector "v" ex. [1,2,-7]: ')

aux = v[1:-1]
list = aux.split(',')

for x in list:
    int(x)

print(list[0] + list[1])

for循环是我尝试迭代列表并将所有数字转换为整数,但它仍然将它们作为字符串返回。例如,如果我输入列表3,6,5,程序将在末尾打印36,而不是预期的9。我尝试使用map函数更改它们,但返回的值与字符串相同。

删除括号和逗号后,如何将所有列表项转换为整数?

EN

回答 1

Stack Overflow用户

发布于 2020-01-25 03:31:00

首先,int() caster不会对变量进行强制转换,它会返回强制转换的值,因此您需要将其重新赋值。

其次,在使用类的循环时

代码语言:javascript
复制
for x in list:

X不是指向列表元素的指针引用,相反,它是随复制到其中的列表元素的值而变化的,所以即使您这样做了:

代码语言:javascript
复制
for x in list:
    x = int(x)

列表中的元素不会受到影响。将字符串字符转换为int的循环应该是(一种方法):

代码语言:javascript
复制
for i in range(len(list)):
    list[i] = int(list[i])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59902030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档