生成带有大量控件的随机文本
randtext的Python项目详细描述
randtext
此模块可用于在python中生成随机文本。它可用于生成文本
- 无意义的字符混乱
- 字符的发音混乱
- 随机字典单词
用法
像这样导入项目中的模块
from randtext import randtext
您只需要使用以下方法生成随机文本。参数format
是一个包含生成随机文本的指令的字符串。下面讨论format
参数的结构。
randtext.generate(format)
格式参数
参数format
是一个逗号分隔的指令列表,randtext将使用该列表生成随机文本。
指令必须是一个数字,后跟要随机选择的操作类型或字符列表。数字表示希望在该序列中包含的字符数。指令的另一半可以是两种类型
- combinable operations-可以将以下操作组合在一起,以定义randtext将随机选择以生成文本的字符列表
c
-所有小写ascii字母C
-所有大写的ascii字母i
-0-9的所有整数- 特殊字符-除了
,
之外,可以根据需要使用任何特殊字符,因为它用于分隔format
参数中的指令。如果你愿意,你甚至可以使用一个空间。
- 不可组合操作-这些操作不能与其他操作组合。如果您尝试将它们与其他操作相结合,则它们将被视为字符列表中的另一个字符,以便从中随机生成无意义的文本
pc
-生成小写可代词文本pC
-生成大写可发音文本pcC
-生成带有随机小写或大写字符的可发音文本dc
-生成小写字典文本dC
-生成大写字典文本dcC
-使用随机小写或大写的字符生成字典文本
示例
包含14个ascii小写和大写字符的简单无意义随机文本
randtext.generate('14cC') # 5 sample outputs: # ZWUvhxquyeNlWh # SarqpCypLJrEWe # GhFLSmQWyMISaN # gdDcRzOthCqUpw # oGUbsyHHfcaNeB
以2个
#$%&()[]{}<>
字符、2个数字、1个随机大写字母、5个整数或小写和大写字母开始文本randtext.generate('2#$%&()[]{}<>,2i,1C,5icC') # 5 sample outputs: # %>62F9134f # }%12FaLe5j # {{11H82R2i # [%73UOVuk3 # %{01EG8rG6
创建两个可发音(但仍无意义)的单词,每个单词有8个字符,并用空格隔开。第一个单词必须以一个随机的大写字母开头,其余的字母都应该是小写的。第二个单词必须有随机的小写和大写字符。
randtext.generate('1C,7pc,1 ,8pcC') # 5 sample outputs: # Ceaskeff aUcLavio # Dbaidirh eagHAusk # Uiayausk eENAUSTO # Zshaiweb aistEayA # Hiweegup NougUGhA
创建两个字典单词,每个单词包含10个字符,每个字符之间用空格隔开
randtext.generate('10dc,1 ,10dc') # 5 sample outputs: # courteous sumptuous # brimstone riverbank # memoranda embroider # stimulant promenade # proselyte conqueror
注释
- 字典使用找到的单词here,我对字典操作输出的单词不承担任何责任。
您可以从repo本地克隆副本的
dictionary
目录中的文件中删除或添加自己的单词。dictionary
目录中每个文件的名称与文件每行中的字符数相同。可以使用organize_dictionary.py
脚本读取包含所有长度单词的原始字典文件,并创建randtext所需的编号文件此处使用的词典中具有给定长度的单词数如下:
Length | # of words -------+------------ 2 | 26 3 | 136 4 | 783 5 | 2207 6 | 3210 7 | 3910 8 | 4126 9 | 3708 10 | 3151 11 | 2021 12 | 1140 13 | 588 14 | 288 15 | 113 16 | 44 17 | 19 18 | 8 19 | 4 21 | 2 22 | 2 23 | 1