2011-09-23 49 views
1

我试图做一个脚本,当我运行它时会生成一个随机字符串。python中的随机字符串

我已经很远了,但即时通讯有格式问题。

下面是使用

import random  
alphabet = 'abcdefghijklmnopqrstuvwxyz' 

min = 5 
max = 15 

name = random.sample(alphabet,random.randint(min,max)) 

print name 

而且当过我这个

['i', 'c', 'x', 'n', 'y', 'b', 'g', 'r', 'h', 'p', 'w', 'o'] 

我试图格式化结束了所以它是字符串的一个行,以便例如

代码IM
['i', 'c', 'x', 'n', 'y', 'b', 'g', 'r', 'h', 'p', 'w', 'o'] = icxnybgrhpwo 
+2

注意'sample'功能总是选择一组独特的字母,所以你会碰到一个问题,如果'max'大于26(ValueError:样本大于人口)。 –

回答

12

join() it:

>>> name = ['i', 'c', 'x', 'n', 'y', 'b', 'g', 'r', 'h', 'p', 'w', 'o'] 
>>> ''.join(name) 
'icxnybgrhpwo' 
+0

真棒工作我把变量在那里我想出''.join(name) – user705260

0

一个简单的方法来打印的字母:

>>> import string 
>>> string.ascii_lowercase 
'abcdefghijklmnopqrstuvwxyz' 

source

1
import string 
import random 

def create_random(length=8): 
    """ Create a random string of {length} length """ 
    chars = string.letters + string.digits 
    return ''.join(random.Random().sample(chars, length))