首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在python中生成随机增减字符串?

如何在python中生成随机增减字符串?
EN

Stack Overflow用户
提问于 2018-07-27 06:09:30
回答 2查看 934关注 0票数 -3

我需要使随机字符串序列,增加(减少)的字母顺序。例如:"ajikfk45kJDk","bFJIPH7CDd","c“。

EN

回答 2

Stack Overflow用户

发布于 2018-07-27 06:37:54

要做的最简单的事情是创建N个随机字符串,然后对它们进行排序。

那么,如何创建一个随机字符串呢?嗯,您还没有指定您的规则是什么,但是您的三个示例是从ASCII小写、大写和数字集中提取的1到12个字符的字符串,所以让我们这样做。

代码语言:javascript
复制
length = random.randrange(1, 13)
letters = random.choices(string.ascii_letters + string.digits, k=length)
string = ''.join(letters)

所以,只要这样做N次,然后排序。

把它们放在一起:

代码语言:javascript
复制
chars = string.ascii_letters + string.digits
def make_string():
    return ''.join(random.choices(chars, k=random.randrange(1, 13)))
def make_n_strings(n):
    return sorted(make_string() for _ in range(n))

这应该足够简单,您可以随心所欲地对其进行自定义。想要不区分大小写的排序吗?只需在sorted中添加key=str.upper即可。想要一些其他的长度分布吗?只需更换randrange即可。诸若此类。

票数 1
EN

Stack Overflow用户

发布于 2018-07-27 06:21:32

我能想到的最简单的方法是

代码语言:javascript
复制
from random import randint
a = ''.join(sorted([chr(randint(33,127)) for i in range(randint(1,20))], reverse = False))
print(a)

reverse = True使其下降

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51548176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档