基本上,我尝试生成一个随机的4位数字,然后拆分该数字并将每个数字分配给一个单独的变量。我是python新手,我真的不知道我在做什么,我从互联网上得到了create random number代码以及分割字符串的代码,所以我不能真正地自我诊断问题。感谢任何帮助!在
from random import *
number = randint(1000,9999)
strnumber = str(number)
a,b,c,d = strnumber.split([strnumber[i:i+1] for i in range(0, len(strnumber), 1)])
print(a)
print(b)
print(c)
print(d)
错误信息如下:
Traceback (most recent call last):
File "D:\Documents HDD\Python\Mastermind Task.py", line 4, in
a,b,c,d = strnumber.split([strnumber[i:i+1] for i in range(0, len(strnumber), 1)])
TypeError: must be str or None, not list
编辑:好吧,我保证我不是一个十足的白痴,我只是把错误的东西抄到了帖子里,我已经修正了相当尴尬的打字错误。在
split()
返回字符串列表,而不是字符串本身。您必须将其解析出来并从中获取字符串,或者因为它是一个单一的数字,只需使用str()
对其进行强制转换有两个问题:
stringnumber
,而不是{str.split
,它将分隔符作为参数。此功能不是必需的。在因此您可以使用:
但是,请注意,字符串本身是iterable,因此可以直接解压缩:
^{pr2}$或者,如果需要整数:
^{3}$或者,您可以使用数学运算,避免}之间的转换:
str
和{请注意,我们颠倒赋值顺序以反映我们的计算。在
我们可以直接将多个变量赋给}
string
,但同时我们可以使用map
来生成所有的变量{相关问题 更多 >
编程相关推荐