对代码进行了优化,尽可能的简化代码,同时把程序更名为:“文本操作工具”如果你们有更好的名字也可以在评论区里面提出,把“判断素数”部分删除了,取而代之的是:“列出一个范围内的素数”
这个小程序算不上多复杂,不过还是有一定实用性的
功能介绍(在程序的 Help 模式里也可以看)
- 生成随机字符的功能:生成一个随机大写字母、随机小写字母和随机整数的组合,长度由用户自定义
- 生成随机数字的功能:生成一个随机整数,范围由用户自定义
- 生成高强度密码的功能:生成一个由随机大写字母、随机小写字母、随机整数、随机符号组成的字符串,范围由用户自定义,非常适合用来当密码(当然你自己要记下来)
- 生成随机浮点数部分:生成一个随机小数,范围由用户自定义
- 列出一个范围内的素数部分:计算一个范围内的全部素数,范围由用户自定义
同时我还发现了一个问题,在程序要求输入内容的时候,不能输入一些反常的内容,比如要你输入数字你输入特殊符号,甚至不写直接回车……
输入数字的值也不要太大,比如:99999之类的,会崩溃
所以:程序在要求输入数字时,请不要输入过大的数字,容易崩溃!目前还没有技术进行优化,抱歉啦~~~
版本信息
版本:v1.0
作者:Abyss
最后更新于:2020-8-21
代码行数(包括注释):115 行
版权信息
版权归 Abyss 所有,开放源代码(任何人都可以在代码基础上进行改编,发布则必须声明代码来源!)
源代码
# 导入库
import random
import string
import sys
from time import *
import math
# 欢迎界面
print("欢迎进入文本操作工具,这是一个可以进行文本相关操作的工具")
print("作者:Abyss")
print("文本操作工具-v1.0")
print("最后更新于:2020/8/20")
print("现在进入功能选择界面……")
sleep(1)
# 功能选择
print("")
功能选择 = input("生成随机字符输入1\n生成随机数字输入2\n生成高强度密码输入3\n生成随机浮点数输入4\n列出一个范围内的素数输入5\n查看帮助输入help\n退出输入exit:")
# 判断
#无限循环
while True:
if 功能选择 == "1":
print("")
print("现在是生成随机字符模式")
随机字符长度 = input("请输入随机字符的长度(必须为整数):")
print("正在生成,请等待……")
随机字符 = ''.join(random.sample(string.ascii_letters + string.digits, int(随机字符长度)))
sleep(1)
print("生成完毕!")
print("随机字符为:",随机字符)
sleep(1)
print("")
# 生成随机数字部分
elif 功能选择 == "2":
print("")
print("现在是生成随机数字模式")
最小值 = input("请输入随机数字的最小值(必须为整数):")
最大值 = input("请输入随机数字的最大值(必须为整数):")
print("正在生成,请等待……")
随机数字 = random.randint(int(最小值),int(最大值))
sleep(1)
print("生成完毕!")
print("随机数字为:",随机数字)
sleep(1)
print("")
# 生成高强度密码部分
elif 功能选择 == "3":
print("")
print("现在是生成高强度密码模式")
密码长度 = input("请输入密码长度(必须为整数,建议8-16位,由于是不规则的,所以建议把密码记下来!):")
print("正在生成,请等待……")
密码 = ''.join(random.sample(["A","B","C","D","E","F","G","H","I","J","K","L","N","M","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","n","m","o","p","q","r","s","t","u","v","w","x","y","z","!","@","#","$","%","^","&","*","(",")","0","1","2","3","4","5","6","7","8","9"], int(密码长度)))
sleep(1)
print("生成完毕!")
print("高强度密码为:",密码)
sleep(1)
print("")
# 生成随机浮点数部分
elif 功能选择 == "4":
print("")
print("现在是生成随机浮点数模式")
浮点数最小值 = input("请输入随机浮点数的最小值(必须为整数):")
浮点数最大值 = input("请输入随机浮点数的最大值(必须为整数):")
print("正在生成,请等待……")
随机浮点数 = random.uniform(int(浮点数最小值), int(浮点数最大值))
sleep(1)
print("生成完毕!")
print("随机数字为:",随机浮点数)
sleep(1)
print("")
# 列出一个范围内的素数
elif 功能选择 == "5":
print("")
print("现在是列出一个范围内的素数模式")
a = input("请输入一个数字作为范围最大值(用于从0到这个数字中的素数):")
L=[]
for x in range(int(a)):
if x<2:
continue
for i in range(2,x):
if x%i==0:
break
else:
L.append(x)
print(a,"以内的全部素数有:",L)
sleep(1)
print("")
# help部分
elif 功能选择 == "help":
print("")
print("现在是帮助模式")
print("生成随机字符的功能:生成一个随机大写字母、随机小写字母和随机整数的组合,长度由用户自定义")
print("生成随机数字的功能:生成一个随机整数,范围由用户自定义")
print("生成高强度密码的功能:生成一个由随机大写字母、随机小写字母、随机整数、随机符号组成的字符串,范围由用户自定义,非常适合用来当密码(当然你自己要记下来)")
print("生成随机浮点数部分:生成一个随机小数,范围由用户自定义")
print("列出一个范围内的素数部分:计算一个范围内的全部素数,范围由用户自定义")
print("注意:以上模块在要求输入数字时,请不要输入过大的数字,容易崩溃!目前还没有技术进行优化")
print("")
print("作者:Abyss,我会在我的博客公布源代码和打包后的exe文件,持续更新,更新内容请留意我的博客!")
print("当前版本号:v1.0")
print("“文本操作工具”博客专栏:https://blog.nocsi.xyz/category/str_tool")
print("本次更新内容:更名为:文本操作工具、优化代码、去除“判断素数”部分,用“列出一个范围内的素数”取而代之")
print("感谢支持!有问题请在博客内反馈!")
sleep(1)
print("")
#退出程序
elif 功能选择 == "exit":
print("正在退出程序……")
sleep(1)
break
#无法判断
else:
print("无法理解你输入的内容,仔细检查一下是不是输入错了?")
sleep(1)
print("")
功能选择 = input("生成随机字符输入1\n生成随机数字输入2\n生成高强度密码输入3\n生成随机浮点数输入4\n列出一个范围内的素数输入5\n查看帮助输入help\n退出输入exit:")
# 感谢支持!!!
下载
- v1.0 bate:
- v1.0:
感谢支持!!!