大佬教程收集整理的这篇文章主要介绍了如何使用随机组合不同的短语python,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用 random 从包含随机名称的元组中使用随机数量的名称生成随机用户名。我尝试了一些代码,但没有成功。
这是我试过的代码,但它给了我这个:<generator object <genexpr> at 0x7f8728c52580>
当我打印它时
randnames = ['ender','Pro','itz','YT','Chill','Mom','Playz','Games','fortnite','prokID','monkey','Gamer','GirlGamer','s1mp','lowPing','ihave','getgud','istupID','123','minecraft','LMAO','non']
username = f'{random.choice(randnames) for i in range(random.randint(1,8))}'
问题是线路
random.choice(randnames) for i in range(random.randint(1,8))
它返回一个生成器对象而不是字符串,因此当您尝试使用 fString
将其转换为字符串时,您只需打印该对象。
如果您使用 list 将其转换为列表,您可以看到输出更改为随机名称列表
f"{list(random.choice(randnames) for i in range(random.randint(1,8)))}"
输出:
['prokid','Chill','non','Playz']
但要获得您想要的输出,您应该使用 ''.join
,它接受一个可迭代对象(如您使用理解生成的生成器对象)并将其所有元素连接在一起。
randnames = ['ender','Pro','itz','YT','Mom','Playz','Games','fortnite','prokid','monkey','Gamer','GirlGamer','s1mp','lowping','ihave','getgud','istupid','123','minecraft','LMAO','non']
username = ''.join(random.choice(randnames) for i in range(random.randint(1,8)))
如果您执行 print(userName)
并且选择了相同的随机名称,您将获得
prokidChillnonPlayz
这就是你想要的。
以上是大佬教程为你收集整理的如何使用随机组合不同的短语python全部内容,希望文章能够帮你解决如何使用随机组合不同的短语python所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。