我有一个建议:
L1 = input()
我想要的输出是:
[1, 7, -3, 10, 42, 5, 0, 17]
输入是"1 7-3 10 42 5 0 17“,这意味着当我打印L1时,它会产生:
1 7 -3 10 42 5 0 17
使用inp( int() )给出了“带基数10:的int()无效文本”。使用.split不会更改输出。
如果我将用户输入作为列表,那么它将产生:
[1 7 -3 10 42 5 0 17]
数字字符串不能单独输入,必须作为一个整体输入,然后用逗号“拆分”。然而;
L1 = input()
L1.split() or L1.split(",")
print(L1)
只要屈服..。
1 7 -3 10 42 5 0 17
发布于 2016-10-27 03:07:44
为了正确更新L1,您必须为它赋值L1.split()返回的值。
L1 = "1 7 -3 10"
L1 = L1.split()
print(L1)
输出: ['1', '7', '-3', '10']
或者如果您想要一个整数列表:
L1 = "1 7 -3 10"
L1 = [int(i) for i in L1.split()]
print(L1)
输出: [1, 7, -3, 10]
发布于 2016-10-27 03:09:06
如果要按空格或逗号分隔,则应使用regexp拆分。另外,拆分的项是str
类型,您可能希望将它们转换为int
类型。
下面是代码:
import re
L1 = input()
L1 = [int(i) for i in re.split('[\s,]+', L1) if i]
print(L1)
https://stackoverflow.com/questions/40275378
复制相似问题