import random def rand_str(len): chars = ''.join(['abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', '1234567890', '_+']) # plus whatever additional characters you want return ''.join([random.choice(chars) for i in range(len)]) print rand_str(10)