分享

Python代码实例

 昵称QAb6ICvc 2022-04-20

Python代码实例

1。四位数字字母验证码的生成实例

复制代码

import random

if __name__ =="__main__":    #四位数字字母验证码的生成

    checkcode="" #保存验证码的变量

    for i in range(4):

        index=random.randrange(0,4)  #生成一个0~3中的数

        if index!=i and index +1 !=i:

            checkcode +=chr(random.randint(97,122))  # 生成a~z中的一个小写字母

        elif index +1==i:

            checkcode +=chr(random.randint(65,90) ) # 生成A~Z中的一个大写字母

        else:

            checkcode +=str(random.randint(1,9))  # 数字1-9

    print(checkcode)

输出为:m47A、8wQ9、vugS

-------------------------------

2。格式化时间函数

 def formatTime(longtime):

 '''格式化时间的函数'''

 import time

 return time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(longtime))

3。记录显示登录日志实例

(,= .format(username ,time.strftime(,= line ==   
            (line)    == 
    username = input(
     len(username) < 2(= input(
    password = input(
     len(passw ord) < 6(= input((
    show_info()              
    num = int(input()) 
     num ==(
         num == 1(= int(input((= int(input())

3


 

# 任务2:模拟淘宝客服自动回复

def find_answer(question):

    with open('reply.txt','r') as f :

        while True:

            line=f.readline()

            if  not line:   #也可以为if  line==''

                break

            keyword=line.split('|')[0]

            reply=line.split('|')[1]

            if keyword in question:

                return reply

        return '对不起,没有你想要找的问题'

if __name__ =='__main__':

    question=input('请输入想要提问的内容:')

    while True:

        if question=='bye':

            break

        reply=find_answer(question)

        if not reply:

            question=input("小蜜不懂您在说什么,您可以问一些与订单、账户和支付相关的内容(退出请输入bye):")

        else:

            print(reply)

            question=input("您可以问一些与订单、账户和支付相关的内容(退出请输入bye):")

    print('谢谢,再见!')

4

最大公约数:指两个或多个整数共有约数中最大的一个

最小公倍数:两个或多个整数公有的倍数叫做它们的公倍数,其中除0以外最小的一个公倍数就叫做这几个整数的最小公倍数

二者关系:两个数之积=最小公倍数*最大公约数

a=int(input('输入数字1:'))

b=int(input('输入数字2:'))

s=a*b

while a%b!=0:

    a,b=b,(a%b)

    print(a)

    print(b)

else:

    print(b,'is the maximum common divisor最大公约数')

    print(s//b,'is the least common multiple,最小公倍数')

更相减损法

a=int(input('please enter 1st num:'))

b=int(input('please enter 2nd num:'))

s=a*b

while a!=b:

    if a>b:

        a-=b

    elif a<b:

        b-=a

else:

    print(a,'is the maximum common divisor')

    print(s//a,'is the least common multiple')

#运行结果

please enter 1st num:40

please enter 2nd num:60

20 is the maximum common divisor

120 is the least common multiple

5。判断是否为闰年 (辗转相除法)

# 判断是否为闰年

while True:

    try:

        num=eval(input("请输入一个年份:"))

    except:

        print('输入错误年份')

        continue

    if (num %4==0 and num%100 !=0) or num %400==0:

        print(num,"是闰年")

    else:

        print(num,"不是闰年")


import calendar

year = int(input("请输入年份:"))
check_year=calendar.isleap(year)if check_year == True:    print ("闰年")else:    print ("平年")


6。Python统计字符串中数字,字母,汉字的个数

import re

str_test='abcdefgHABC123456中华民族'

#把正则表达式编译成对象,如果经常使用该对象,此种方式可提高一定效率

num_regex = re.compile(r'[0-9]')

zimu_regex = re.compile(r'[a-zA-z]')

hanzi_regex = re.compile(r'[\u4E00-\u9FA5]')

print('输入字符串:',str_test)

#findall获取字符串中所有匹配的字符

num_list = num_regex.findall(str_test)

print('包含的数字:',num_list)

zimu_list = zimu_regex.findall(str_test)

print('包含的字母:',zimu_list)

hanzi_list = hanzi_regex.findall(str_test)

print('包含的汉字:',hanzi_list)

 #羊车门问题

import random as r

#总次数

total=1000000 #1000,1W,10W,100W

#换与不换的获胜次数

win1=0

win2=0

for i in range(total):

    #模拟选择过程

    man=r.randint(1,3)

    car=r.randint(1,3)

    #结果:一开始为车门,不换+1.

    #       否则则一开始为羊门,换+1.

    if man==car:

        win1+=1

    else:

        win2+=1

print("在{}次实验中:".format(total))

print("若不更改门,获胜概率为{:.3}%.".format((win1/total)*100))

print("若更改门,获胜概率为{:.3}%.".format((win2/total)*100))

 

import random

x=random.randint(5000,10000)

print(x)

change=0

nochange=0

for i in range(1,x+1):

  a=random.randrange(1,4)

  b=random.randrange(1,4)

  if a==b:

    nochange=nochange+1

  else:

    change=change+1

print("不更改选择得到汽车的概率为{:.2f}".format(nochange/x))

print("更改选择得到汽车的概率为{:.2f}".format(change/x))

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约