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.Python统计字符串中数字,字母,汉字的个数
1 import re
2 str_test='abcdefgHABC123456中华民族'
3
4 #把正则表达式编译成对象,如果经常使用该对象,此种方式可提高一定效率
5 num_regex = re.compile(r'[0-9]')
6 zimu_regex = re.compile(r'[a-zA-z]')
7 hanzi_regex = re.compile(r'[\u4E00-\u9FA5]')
8
9 print('输入字符串:',str_test)
10 #findall获取字符串中所有匹配的字符
11 num_list = num_regex.findall(str_test)
12 print('包含的数字:',num_list)
13 zimu_list = zimu_regex.findall(str_test)
14 print('包含的字母:',zimu_list)
15 hanzi_list = hanzi_regex.findall(str_test)
16 print('包含的汉字:',hanzi_list)
3.判断是否为闰年 (只分闰年和平年,平年有365天,闰年有366天。四年一个闰年被4整除,3年平年)
1 # 判断是否为闰年
2 while True:
3 try:
4 num=eval(input("请输入一个年份:"))
5 except:
6 print('输入错误年份')
7 continue
8 if (num %4==0 and num%100 !=0) or num %400==0:
9 print(num,"是闰年")
10 else:
11 print(num,"不是闰年")
1 #方法二
2
3 import calendar
4
5 year = int(input("请输入年份:"))
6 check_year=calendar.isleap(year)
7 if check_year == True:
8 print ("闰年")
9 else:
10 print ("平年")
4.Python统计字符串中数字,字母,汉字的个数
1 import re
2 str_test='abcdefgHABC123456中华民族'
3
4 #把正则表达式编译成对象,如果经常使用该对象,此种方式可提高一定效率
5 num_regex = re.compile(r'[0-9]')
6 zimu_regex = re.compile(r'[a-zA-z]')
7 hanzi_regex = re.compile(r'[\u4E00-\u9FA5]')
8
9 print('输入字符串:',str_test)
10 #findall获取字符串中所有匹配的字符
11 num_list = num_regex.findall(str_test)
12 print('包含的数字:',num_list)
13 zimu_list = zimu_regex.findall(str_test)
14 print('包含的字母:',zimu_list)
15 hanzi_list = hanzi_regex.findall(str_test)
16 print('包含的汉字:',hanzi_list)
5.记录显示登录日志实例
1 import time
2
3 def show_info():
4 print('''输入提示数字,执行相应操作
5 0:退出
6 1:查看登录日志
7 ''')
8
9 def write_loginfo(username):
10 """
11 将用户名和登录时间写入日志
12 :param username: 用户名
13 """
14 with open('log.txt','a') as f:
15 string = "用户名:{} 登录时间:{}\n".format(username ,time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())))
16 f.write(string)
17
18 def read_loginfo():
19 """
20 读取日志
21 """
22 with open('log.txt','r') as f:
23 while True:
24 line = f.readline()
25 if line == '':
26 break # 跳出循环
27 print(line) # 输出一行内容
28
29 if __name__ == "__main__":
30 # 输入用户名
31 username = input('请输入用户名:')
32 # 检测用户名
33 while len(username) < 2 :
34 print('用户名长度应不少于2位')
35 username = input('请输入用户名:')
36 # 输入密码
37 password = input('请输入密码:')
38 # 检测密码
39 while len(passw ord) < 6 :
40 print('密码长度应不少于6位')
41 password = input('请输入密码:')
42
43 print('登录成功')
44 write_loginfo(username) # 写入日志
45 show_info() # 提示信息
46 num = int(input('输入操作数字:')) # 输入数字
47 while True:
48 if num == 0:
49 print('退出成功')
50 break
51 elif num == 1:
52 print('查看登录日志')
53 read_loginfo()
54 show_info()
55 num = int(input('输入操作数字:'))
56 else:
57 print('您输入的数字有误')
58 show_info()
59 num = int(input('输入操作数字:'))
6.求最大公约数和最小公倍数 (辗转相除法)
最大公约数:指两个或多个整数共有约数中最大的一个
最小公倍数:两个或多个整数公有的倍数叫做它们的公倍数,其中除0以外最小的一个公倍数就叫做这几个整数的最小公倍数
二者关系:两个数之积=最小公倍数*最大公约数
1 a=int(input('输入数字1:'))
2 b=int(input('输入数字2:'))
3 s=a*b
4 while a%b!=0:
5 a,b=b,(a%b)
6 print(a)
7 print(b)
8 else:
9 print(b,'is the maximum common divisor最大公约数')
10 print(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
5 while a!=b:
6 if a>b:
7 a-=b
8 elif a<b:
9 b-=a
10 else:
11 print(a,'is the maximum common divisor')
12 print(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
Python代码学习的更多相关文章
- python代码学习day03-序列化学习pickle及json
#!/usr/bin/env python #coding:utf8 import pickle,json import datetime dic1 = {'name':'alex', 'age':4 ...
- 学习TensorFlow,浅析MNIST的python代码
在github上,tensorflow的star是22798,caffe是10006,torch是4500,theano是3661.作为小码农的我,最近一直在学习tensorflow,主要使用pyth ...
- 风炫安全web安全学习第三十二节课 Python代码执行以及代码防御措施
风炫安全web安全学习第三十二节课 Python代码执行以及代码防御措施 Python 语言可能发生的命令执行漏洞 内置危险函数 eval和exec函数 eval eval是一个python内置函数, ...
- 学习 27 门编程语言的长处,提升你的 Python 代码水平
Python猫注:Python 语言诞生 30 年了,如今的发展势头可谓如火如荼,这很大程度上得益于其易学易用的优秀设计,而不可否认的是,Python 从其它语言中偷师了不少.本文作者是一名资深的核心 ...
- 基于深度学习的人脸性别识别系统(含UI界面,Python代码)
摘要:人脸性别识别是人脸识别领域的一个热门方向,本文详细介绍基于深度学习的人脸性别识别系统,在介绍算法原理的同时,给出Python的实现代码以及PyQt的UI界面.在界面中可以选择人脸图片.视频进行检 ...
- (数据科学学习手札144)使用管道操作符高效书写Python代码
本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 大家好我是费老师,一些比较熟悉pandas的读者 ...
- 基于深度学习的鸟类检测识别系统(含UI界面,Python代码)
摘要:鸟类识别是深度学习和机器视觉领域的一个热门应用,本文详细介绍基于YOLOv5的鸟类检测识别系统,在介绍算法原理的同时,给出Python的实现代码以及PyQt的UI界面.在界面中可以选择各种鸟类图 ...
- Python基础学习Day6 is id == 区别,代码块,小数据池 ---->>编码
一.代码块 Python程序是由代码块构造的.块是一个python程序的文本,他是作为一个单元执行的. 代码块:一个模块,一个函数,一个类,一个文件等都是一个代码块. 而作为交互方式输入的每个命令都是 ...
- 入门python:《Python编程从入门到实践》中文PDF+英文PDF+代码学习
入门python推荐学习久负盛名的python入门书籍<Python编程从入门到实践>. 书中涵盖的内容是比较精简的,没有艰深晦涩的概念,最重要的是每个小结都附带有"动手试一试& ...
- if __name__== "__main__" 的意思(作用)python代码复用
if __name__== "__main__" 的意思(作用)python代码复用 转自:大步's Blog http://www.dabu.info/if-__-name__ ...
随机推荐
- WPF登录界面样例
XAML文件内容如下 1 <Window x:Class="ERP.Views.Login" 2 xmlns="http://schemas.microsoft.c ...
- SpringMVC在处理Ajax请求后返回void导致前台Ajax回调函数不执行
问题简述 在一次SpringMVC项目中,前台通过Ajax请求,准备修改数据库中的数据.因为Ajax请求只是让后台更改数据,所以Controller方法根本不需要返回给前台任何数据,所以我们将Cont ...
- 【进阶篇】使用 Stream 流对比两个集合的常用操作分享
目录 前言 一.集合的比较 1.1需要得到一个新的流 1.2只需要一个简单 boolean 结果 二.简单集合的对比 2.1整型元素集合 2.2字符串元素集合 2.3其它比较 三.Stream 基础回 ...
- golang 怎么获取kubernetes deployments的状态?
如果我们需要把k8s的信息展示为一个友好的web页面.那么deployment 的信息基本上是非常重要的(大部分的服务都是使用deployment部署). 从yaml 中我们能获取到很多关于deplo ...
- SSH-Web 工具之 shellinabox:一款使用 AJAX 的基于 Web 的终端模拟器 安装及使用教程
本文转载自: shellinabox:一款使用 AJAX 的基于 Web 的终端模拟器 一.shellinabox简介 通常情况下,我们在访问任何远程服务器时,会使用常见的通信工具如OpenSSH和P ...
- linux ssh key 登录
vim /etc/ssh/sshd_config #禁用root账户登录,非必要,但为了安全性,请配置 PermitRootLogin no # 是否让 sshd 去检查用户家目录或相关档案的权限数据 ...
- itest work 开源接口测试&敏捷测试管理平台 9.5.0 GA_u4发布,优化及修复BUG
(一)itest work 简介 itest work (爱测试) 一站式工作站让测试变得简单.敏捷,"好用.好看,好敏捷" ,是itest wrok 追求的目标.itest w ...
- 从零开始写 Docker(十七)---容器网络实现(中):为容器插上”网线“
本文为从零开始写 Docker 系列第十七篇,利用 linux 下的 Veth.Bridge.iptables 等等相关技术,构建容器网络模型,为容器插上"网线". 完整代码见:h ...
- vue绑定下拉框 vue修饰符
<select v-model="selected"> <option>请选择</option> <option>HTML</ ...
- Manim使用心得
Manim 使用心得 manim 做视频还是挺方便的. 当然,如果你每一次都从 0 开始写,那么你会崩溃. 所以需要找到自己做视频的风格,以此总结出一套通用的 python 模板代码,然后调用. 例如 ...