我想知道什么是最简单的方法来编写从1到50生成数字的方法,然后依赖于生成的数字返回我的字符串如:
Abcdef如果生成的数字为9,
Abcdefghi则生成的数字为6.
我正在使用python 3.2
有几种方法,最简单的方法:
>>> import string
>>> import random
>>> string.ascii_letters[:random.randint(1, 50)].title()
'Abcdefghijklmnopq'
>>> string.ascii_letters[:random.randint(1, 50)].title()
'Abcdefghijklmnopqrstuvwxyzabcdefghijklmnopq'
>>> string.ascii_letters[:random.randint(1, 50)].title()
'Abcdefghijklmnopqrs'
Run Code Online (Sandbox Code Playgroud)
或者你可以去itertools:
>>> import string
>>> import random
>>> from itertools import islice, cycle
>>> def randstr():
... return ''.join(islice(cycle(string.ascii_lowercase),
... random.randint(1, 50))).title()
...
>>> randstr()
'Abcdefghijklmnopq'
>>> randstr()
'Abcdefghijklmnopqrstuvwxyzabcdefghijklmnopq'
>>> randstr()
'Abcdefghijklmnopqrs'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
452 次 |
| 最近记录: |