2014-02-21 21 views
0
def tradeid_generator(): 
    tradeid = ''.join(random.choice(string.ascii_uppercase) for x in range(2)) 
    return ''.join(tradeid,random.choice(string.digits) for x in range(4)) 

我需要得到类似2个随机字母后跟4个数字的内容。2随机字母后跟4位数字

但我发现了以下错误:

SyntaxError: Generator expression must be parenthesized if not sole argument

+0

''{} {:04}'。format(tradeid,random.randrange(10000))'? – falsetru

回答

1

只需加入你的字符串:

tradedid + ''.join(random.choice(string.digits) for x in range(4)) 

否则,您return语句有错误join。您有两个参数,但只有一个参数,random.choice(string.digits) for x in range(4)也是一个没有括号的生成器表达式。

+0

简单明了:) –