str项目赋值的TypeError

时间:2014-12-19 19:43:19

标签: python string random location generator

我收到以下错误:

    passwords[k] = passwords[k].strip()
TypeError: 'str' object does not support item assignment

但我不知道它来自哪里:

try:
   list = ''.join(random.choice('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ') for i in range(random.randint(6,16)))
   passwords = list
   k = 0
   while k < len(passwords):
      passwords[k] = passwords[k].strip()
      k += 1
except KeyboardInterrupt:
    print "\n [*] Exiting program ..\n"
    sys.exit(1)

2 个答案:

答案 0 :(得分:0)

要理解你想要的东西有点难。你试过:“从import random_string”?

我建议您使用python初学者指南,https://docs.python.org/2/tutorial/ 您需要什么:https://docs.python.org/2/tutorial/modules.html#packages

编辑: 你想要的是:

  

导入随机

     

random.randint(6,16)

提供6到15之间的随机整数。

所以对你:

  

导入随机

     

''。join(random.choice('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')for i in range(random.randint(6,16)))

我相信如果需要你可以把它变成一个函数..: - )

答案 1 :(得分:0)

您无法以这种方式编辑字符串..

解决方法是将其设置为列表,对每个元素执行某些操作然后再将其合并。

a = 'abc'
b = list(a)
b[0] = b[0].split() # If that's what you want for whatever reason
''.join(b)