import random
import click
# using sample : python generate.py generate -l 5 -n 6
# {"4QSn8O", "gKND", "Tnr3", "Gkz1ndxg2s", "OgIxM", "AI8esGN", }
BASE_STR = 'ABCDEFGHIGKLMNOPQRSTUVWXYZabcdefghigklmnopqrstuvwxyz0123456789'
BASE_NUM = [4, 5, 6, 7, 8, 9, 10]
def generate_random_str(str_len, base_str):
str_list = random.sample(base_str, str_len)
random_str = "".join(str_list)
return random_str
@click.command()
@click.option(
'--str_len',
"-l",
envvar="str_len",
required=False,
default=10,
type=click.INT,
help="one string len",
)
@click.option(
'--str_number',
"-n",
envvar="str_number",
required=False,
default=10,
type=click.INT,
help="string number",
)
def generate(str_len=5, str_number=5):
list_number = 0
string_list = "{"
while True:
if list_number < str_number:
length = len(BASE_NUM) - 1
str_len = BASE_NUM[random.randint(0, length)]
string_list += '"' + generate_random_str(str_len, BASE_STR) + '"' + ', '
list_number += 1
if list_number % 10 == 0:
string_list += '\n'
else:
break
string_list += '}'
with open("generate_string.c", "w") as f:
f.write("generate_buff[{0}] = ".format(str_number) + str(string_list) + ";")
print(string_list)
if __name__ == '__main__':
generate()
python-随机生成 C 语言的字符串数组
最新推荐文章于 2023-03-22 19:19:20 发布