''' 1. 定义函数,产生20个0-100之间的随机数, 统计某个数在这组随机数中出现的次数 (从键盘输入某数调用函数时传入) ''' import random def num(): num=0 lst=[] while num <= 20: n1 = random.randint(0, 100) lst.append(n1) num+=1 print(lst) num0 = int(input('请输入数字:')) count = lst.count(num0) print(count) s1=num() ''' 2. 定义函数 系统随机生成10道(20以内)加,减,乘,除 四种基本算术运算的题目。例如 第1题:12/2= 第2题:15/11= 第3题:19+5= 第4题:20//13= 第5题:16-10= 第6题:13-11= 第7题:15+4= 第8题:18+16= 第9题:19+14= 第10题:14+1= ''' import random def fun(): num=1 count=0 while num<11: n2 = random.choice(['+', '-', '*', '//']) n3=random.randint(1, 20) n4=random.randint(1,20) if n3>n4: n3,n4=n3,n4 reslut = int(input((f'第{num}题:{n3}{n2}{n4}='))) else: n3,n4=n4,n3 reslut=int(input((f'第{num}题:{n3}{n2}{n4}='))) if n2=='+': right=n3+n4 elif n2=='-': right=n3-n4 elif n2=='*': right=n3*n4 else: right=n3//n4 if reslut==right: count+=1 num+=1 re=f'{count/(num-1):.1%}' print(f'一共{num-1}道题目,你答对了{count}道题目,正确率是{re}') s2=fun() 获取时间 import datetime import time day1=datetime.datetime.now() print(day1) print('-------------------------------------------') day2=datetime.date.today() print(day2) print('-------------------------------------------') day3=time.strftime('%Y-%m-%d %X') print(day3) print('-------------------------------------------') day4=day2+datetime.timedelta(days=10) print(day4) print('-------------------------------------------') day5=time.localtime() print(day5) print('-------------------------------------------') day6=time.time() print(day6) print('-------------------------------------------') day7=time.asctime() print(day7) import os #======================================= #os.mkdir(path) 创建一级目录 #os.listdir(path) 列出目录下的所有文件和文件夹 #os.rmdir(path) 删除目录 ,只能删除空目录 #os.path.join(path,file) 连接路径 和文件名 #os.path.isabs(path) 判断是否是绝对路径 #os.path.isfile(path) 判断是否是文件 #os.path.isdir(path) 判断是否是目录 #os.path.exists(path) 判断文件或目录是否存在 #================================================ #创建文件夹 s3=os.mkdir(r'C:\Users\aoxiang.liu\os模块') print(s2) #删除文件夹 s4=os.rmdir(r'C:\Users\aoxiang.liu\os模块') print(s4) #查看指定路径下的文件和目录名 s4=os.listdir(r'D:\linux') print(s1) #输入1个目录路径,统计出该目录下有多少个文件和目录 file_count=0 dir_count=0 p=input('请输入目录路径:') #如:"C:\mysoft\python37" if os.path.exists(p): # 检查输入的路径是否存在 if os.path.isdir(p): # 检查输入的是否为目录 fd = os.listdir(p) # 获取目录下的文件名和目录名 返回列表 for i in fd: #循环文件名称列表 #如:os.path.join('C:\mysoft\python37,'chromedriver.exe') ---'C:\mysoft\python37\chromedriver.exe' obj = os.path.join(p,i) # 获取文件或者目录的完整路径 if os.path.isdir(obj): # 判断是否为目录 dir_count += 1 if os.path.isfile(obj): # 判断是否为文件 file_count += 1 else: print(f'{p} 不是目录') else: print(f'目录 {p} 不存在') #练习3. 获取响应参数中的json字符串{}中的内容 str='response boday:{"name":"张三",“age”:20,"Idcard_no":"410005871"}' import re #获取响应参数中的json字符串{}中的内容 str='response boday:{"name":"张三",“age”:20,"Idcard_no":"410005871"}' def nu1(): st=re.search('{.+}',str) print(st) print(st.span()) print(st.group()) #获取响应参数中的json字符串{}中的单词字符内容 def nu2(): st=re.search('\w',str) print(st) print(st.span()) print(st.group()) def nu7(): st=re.search('\w+',str) print(st) print(st.span()) print(st.group()) #匹配一个非数字字符 def nu3(): st=re.search('\D+',str) print(st) print(st.span()) print(st.group()) nu3() #获取响应参数中的json字符串{}中的中文内容 def n42(): st=re.search('[\u4e00-\u9fa5]',str) print(st) print(st.span()) print(st.group()) def nu5(): st=re.search('[\u4e00-\u9fa5]{2}',str) print(st) print(st.span()) print(st.group()) #获取响应参数中的json字符串{}中的数字内容 def nu6(): st=re.findall('\d+',str) print(st) import re s1="姓名:张三,年龄:18,性别:男,生日:1992-02-19" #使用正则 数字替换* def ca(): ru=re.sub("\d+",'*',s1) print(ru) ru=re.sub("\d",'*',s1) print(ru) ru=re.sub("\d",'*',s1,2) print(ru) ru = re.sub("\d{4}", '****', s1) print(ru) #使用正则 分割每个部分信息 姓名,年龄,性别 生日 def de(): ru=re.split(',',s1) print(ru) import re s12="姓名:张三,年龄:18,性别:男,生日:1992-02-19" #使用正则 数字替换* def ca2(): ru=re.sub("\d+",'*',s12) print(ru) ru=re.sub("\d",'*',s12) print(ru) ru=re.sub("\d",'*',s12,2) print(ru) ru = re.sub("\d{4}", '****', s12) print(ru) #使用正则 分割每个部分信息 姓名,年龄,性别 生日 def de2(): ru=re.split(',',s12) print(ru) # 练习4:data="姓名:张三,年龄:18,性别:男,生日:1992-02-19" # (1)将文本中的数字替换为* 如"姓名:张三,年龄:**,性别:男,生日:****-**-**" # (2)将文本中的数据替换为XX 如:"姓名:XX,年龄:XX,性别:XX,生日:XX" # 练习5:data="姓名:张三,年龄:18,性别:男,生日:1992-2-19" # (1)将文本分割 生成列表如:['姓名:张三', '年龄:18', '性别:男', '生日:1992-2-19'] # (2)将文本分割 生与列表如:['姓名', '张三', '年龄', '18', '性别', '男', '生日', '1992', '2', '19'] import re data='姓名:张三,年龄:18,性别:男,生日:1992-02-19' # (1)将文本中的数字替换为* 如"姓名:张三,年龄:**,性别:男,生日:****-**-**" def r1(): rt=re.sub('\d','*',data) print(rt) # (2)将文本中的数据替换为XX 如:"姓名:XX,年龄:XX,性别:XX,生日:XX" def r2(): rt=re.sub(':[\u4e00-\u9fa50-9\-]+',':xx',data) print(rt[0:-1]) r2() # (1)将文本分割 生成列表如:['姓名:张三', '年龄:18', '性别:男', '生日:1992-2-19'] def r3(): rt=re.split(',',data) print(rt) # (2)将文本分割 生与列表如:['姓名', '张三', '年龄', '18', '性别', '男', '生日', '1992', '2', '19'] def r4(): rt=re.split('\W',data) print(rt) import re s124="姓名:张三,年龄:18,性别:男,生日:1992-02-19" #使用正则 数字替换* def ca1(): ru=re.sub("\d+",'*',s124) print(ru) ru=re.sub("\d",'*',s124) print(ru) ru=re.sub("\d",'*',s124,2) print(ru) ru = re.sub("\d{4}", '****', s124) print(ru) #使用正则 分割每个部分信息 姓名,年龄,性别 生日 def de1(): ru=re.split(',',s124) print(ru) #练习1. 分别提取下面文本中手机号和姓名 data3="李X司13195837452王X溪130457687360胡X越13234908326胡X玉15554753583张X萌15245732854赵X凯15054321235陈X芹18600943756朱X哲181964321676钱X棉18396512227" import re def tr1(): tr=re.findall('[\u4e00-\u9fa5]\D{2}',data3) print(tr) def tr2(): tr=re.findall('1[358]\d{9}',data3) print(tr) #练习2.检测输入的url是否正确 如"http://www.baidu.com" import re def ur(): url=input('输入网址:') if re.match('https?',url): print(url) else: print('输入错误') ur()
python中的内置模块random datetime os re
于 2022-08-19 00:08:21 首次发布