python - 随机选字造字
问题描述
假设我想让我的名字随机变化不同。
我有 BoA 这个名字——我可以做这样的事情吗?
import random
list1=['B', '13', 'ß']
list2=['o', 'ø', 'Ö']
list3=['A', 'Ä', 'Á']
random1=random.randint(0,3)
random2=random.randint(0,3)
random3=random.randint(0,3)
print(list1[random1]+ list2[random2]+ list3[random3])
>> BøÁ
我有更简单的方法吗?我只想知道我所有的可能性是什么。另外,我确实收到此错误。如果它的常规字符它工作正常,所以我不知道如何解决这个问题。
File "main.py", line 2
SyntaxError: Non-ASCII character '\xc3' in file main.py on line 2, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
谢谢 !
解决方案
您可以使用random.choice
,如果您想制作更长的单词,这种方法实际上并不合理(想象必须为单词长度 9 创建 9 个不同的变量等),所以我会使用 for 循环:
lists = [['B', '13', 'ß'],
['o', 'ø', 'Ö'],
['A', 'Ä', 'Á']]
word = ''
for lst in lists:
word += random.choice(lst)
print(word)
推荐阅读
- r - 如何重命名文件的一部分
- c# - Storyboard.TargetProperty 路径包含非动画属性 'Text
- javafx - 在 TreeView 中预选项目
- java - 我的 addbyAge() 函数有什么问题,导致一个人不知何故失踪?
- javascript - 在 react-admin 中显示确认对话框的最简单方法是什么?
- python - 多次运行 python 脚本作为具有不同配置的后台进程
- java - 使用 @Transactional 注释回滚在 Spring Boot 中不起作用
- algorithm - 确定哪种方法最适合比较排序算法。小型数据收集的分治或招聘问题
- nuget - 自定义版本后缀 MinVer
- r - 将 UNIX 时间字符串转换为 R 中的日期