基本上,我试图生成一个随机的4位数字,然后将该数字分割并将每个数字分配给一个单独的变量。我是python的新手,老实说我不知道​​我在做什么,我从互联网上获得了创建随机数代码以及拆分字符串的代码,因此我无法真正地自我诊断问题。任何帮助表示赞赏!

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)


错误消息如下:


  追溯(最近一次通话):
  
  文件“ D:\ Documents HDD \ Python \ Mastermind Task.py”,第4行,在
  
  a,b,c,d = strnumber.split([i的range为[strnumber [i:i + 1]
  len(strnumber),1)])
  
  TypeError:必须为str或None,而不是list


编辑:好的,我保证我不是一个完全白痴,我只是将错误的内容复制到帖子中,我已经修复了令人尴尬的错别字。

最佳答案

split()返回字符串列表,而不是字符串本身。您将不得不解析出来并从中获取字符串,或者由于它是单个数字,只需使用str()进行强制转换

09-11 17:43