Ign*_*ams 54

''.join(random.choice(string.lowercase) for x in range(X))
Run Code Online (Sandbox Code Playgroud)

  • 很好地使用生成器表达式.但是,虽然我们正在节省内存,但也可以使用xrange而不是range. (3认同)
  • CytokineStorm,从Python 3.x开始,`range()`的行为与`xrange()`相同. (3认同)

Ale*_*lli 25

如果你不想重复:

import string, random
''.join(random.sample(string.ascii_lowercase, X))
Run Code Online (Sandbox Code Playgroud)

如果你想要(潜在的)重复:

import string, random
''.join(random.choice(string.ascii_lowercase) for _ in xrange(X)))
Run Code Online (Sandbox Code Playgroud)

这假设a-z您的意思是"ASCII小写字符",否则您的字母表可能在这些表达式中表达不同(例如,string.lowercase对于"依赖于语言环境的小写字母",可能包括重音或其他装饰的小写字母,具体取决于您当前的语言环境).