个⼈整理Python代码实例
1。四位数字字母验证码的⽣成实例
python中的字符串是什么1import random
2if__name__ =="__main__":    #四位数字字母验证码的⽣成
3    checkcode=""#保存验证码的变量
4for i in range(4):
5        index=random.randrange(0,4)  #⽣成⼀个0~3中的数
6if index!=i and index +1 !=i:
7            checkcode +=chr(random.randint(97,122))  # ⽣成a~z中的⼀个⼩写字母
8elif index +1==i:
9            checkcode +=chr(random.randint(65,90) ) # ⽣成A~Z中的⼀个⼤写字母
10else:
11            checkcode +=str(random.randint(1,9))  # 数字1-9
12print(checkcode)
输出为:m47A、8wQ9、vugS
-------------------------------
2。格式化时间函数
1def formatTime(longtime):
2'''格式化时间的函数'''
3import time
4return time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(longtime))
--------------------------------
3。记录显⽰登录⽇志实例
import time
def show_info():
print('''输⼊提⽰数字,执⾏相应操作
0:退出
1:查看登录⽇志
''')
def write_loginfo(username):
"""
将⽤户名和登录时间写⼊⽇志
:param username: ⽤户名
"""
with open('','a') as f:
string = "⽤户名:{} 登录时间:{}\n".format(username ,time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))        f.write(string)
def read_loginfo():
"""
读取⽇志
"""
with open('','r') as f:
while True:
line = f.readline()
if line == '':
break# 跳出循环
print(line)  # 输出⼀⾏内容
if__name__ == "__main__":
# 输⼊⽤户名
username = input('请输⼊⽤户名:')
# 检测⽤户名
while len(username) < 2 :
print('⽤户名长度应不少于2位')
username = input('请输⼊⽤户名:')
# 输⼊密码
password = input('请输⼊密码:')
# 检测密码
while len(passw ord) < 6 :
print('密码长度应不少于6位')
password = input('请输⼊密码:')
print('登录成功')
write_loginfo(username)  # 写⼊⽇志
show_info()              # 提⽰信息
num = int(input('输⼊操作数字:')) # 输⼊数字
while True:
if num == 0:
print('退出成功')
break
elif num == 1:
print('查看登录⽇志')
read_loginfo()
show_info()
num = int(input('输⼊操作数字:'))
else:
print('您输⼊的数字有误')
show_info()
num = int(input('输⼊操作数字:'))
------------------------------
3。模拟淘宝客服⾃动回复
1# 任务2:模拟淘宝客服⾃动回复
2
3def find_answer(question):
4    with open('','r') as f :
5while True:
6            adline()
7if not line:  #也可以为if  line==''
8break
9            keyword=line.split('|')[0]
10            reply=line.split('|')[1]
11if keyword in question:
12return reply
13return'对不起,没有你想要的问题'
14
15if__name__ =='__main__':
16    question=input('请输⼊想要提问的内容:')
17while True:
18if question=='bye':
19break
20        reply=find_answer(question)
21if not reply:
22            question=input("⼩蜜不懂您在说什么,您可以问⼀些与订单、账户和⽀付相关的内容(退出请输⼊bye):")
23else:
24print(reply)
25            question=input("您可以问⼀些与订单、账户和⽀付相关的内容(退出请输⼊bye):")
26print('谢谢,再见!')
27
4。求最⼤公约数和最⼩公倍数(辗转相除法)
最⼤公约数:指两个或多个整数共有约数中最⼤的⼀个
最⼩公倍数:两个或多个整数公有的倍数叫做它们的公倍数,其中除0以外最⼩的⼀个公倍数就叫做这⼏个整数的最⼩公倍数⼆者关系:两个数之积=最⼩公倍数*最⼤公约数
1 a=int(input('输⼊数字1:'))
2 b=int(input('输⼊数字2:'))
3 s=a*b
4while a%b!=0:
5    a,b=b,(a%b)
6print(a)
7print(b)
8else:
9print(b,'is the maximum common divisor最⼤公约数')
10print(s//b,'is the least common multiple,最⼩公倍数')
更相减损法
1 a=int(input('please enter 1st num:'))
2 b=int(input('please enter 2nd num:'))
3 s=a*b
4
5while a!=b:
6if a>b:
7        a-=b
8elif a<b:
9        b-=a
10else:
11print(a,'is the maximum common divisor')
12print(s//a,'is the least common multiple')
13
14#运⾏结果
15 please enter 1st num:40
16 please enter 2nd num:60
17 20 is the maximum common divisor
18 120 is the least common multiple
5。判断是否为闰年(辗转相除法)
1# 判断是否为闰年
2while True:
3try:
4        num=eval(input("请输⼊⼀个年份:"))
5except:
6print('输⼊错误年份')
7continue
8if (num %4==0 and num%100 !=0) or num %400==0:
9print(num,"是闰年")
10else:
11print(num,"不是闰年")
import calendar
year = int(input("请输⼊年份:"))
check_year=calendar.isleap(year)
if check_year == True:
print ("闰年")
else:
print ("平年")
6。Python统计字符串中数字,字母,汉字的个数
1import re
2 str_test='abcdefgHABC123456中华民族'
3
4#把正则表达式编译成对象,如果经常使⽤该对象,此种⽅式可提⾼⼀定效率
5 num_regex = repile(r'[0-9]')
6 zimu_regex = repile(r'[a-zA-z]')
7 hanzi_regex = repile(r'[\u4E00-\u9FA5]')
8
9print('输⼊字符串:',str_test)
10#findall获取字符串中所有匹配的字符
11 num_list = num_regex.findall(str_test)
12print('包含的数字:',num_list)
13 zimu_list = zimu_regex.findall(str_test)
14print('包含的字母:',zimu_list)
15 hanzi_list = hanzi_regex.findall(str_test)
16print('包含的汉字:',hanzi_list)
#⽺车门问题
1import random as r
2
3#总次数
4 total=1000000 #1000,1W,10W,100W
5#换与不换的获胜次数
6 win1=0
7 win2=0
8
9for i in range(total):
10#模拟选择过程
11    man=r.randint(1,3)
12    car=r.randint(1,3)
13#结果:⼀开始为车门,不换+1.
14#      否则则⼀开始为⽺门,换+1.
15if man==car:
16        win1+=1
17else:
18        win2+=1
19
20print("在{}次实验中:".format(total))
21print("若不更改门,获胜概率为{:.3}%.".format((win1/total)*100))
22print("若更改门,获胜概率为{:.3}%.".format((win2/total)*100))
1import random
2 x=random.randint(5000,10000)
3print(x)
4 change=0
5 nochange=0
6for i in range(1,x+1):
7  a=random.randrange(1,4)
8  b=random.randrange(1,4)
9if a==b:
10    nochange=nochange+1
11else:
12    change=change+1
13print("不更改选择得到汽车的概率为{:.2f}".format(nochange/x)) 14
15print("更改选择得到汽车的概率为{:.2f}".format(change/x))

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。