**注释 **
单行注释:# 快捷键 CTRL+/
多行注释:‘’‘’‘’‘’
变量
变量:指代存储的数据,可以保存任意类型的数据
变量的命名基本规则:
1.不能是系统关键字
2.只能由数字、字母、下划线组成,不能以数字开头
3.区分大小写
命名的规范:
1.见名知意,简单明了
2.大驼峰命名法:变量中的每一个单词首字母都大写
3.小驼峰命名法:变量中从第二个单词首字母大写
查看系统关键字方法:
fron keyword import kwlist print(kwlist)
**数据类型 **
整型 (int)、浮点型(float)、布尔型(bool)、字符串(srt)、
列表(list)、元组(tuple)、集合(set)、字典(dict)
查看数据类型的方法:
print(type(a))
tip:调整文本格式,减少空格方法:
code-Reformat code 调整文本格式 减少空格
数据类型转换:输入相对于的函数名称即可
int() # 输入整型 float() # 输入浮点型 bool() # 输入布尔型
输入与输出
输入- input
输出-print
结束字符串–end=‘n’ 用处:可以将打印结果放一排
制表符–end = ‘t’, 同行间隔4个字符
分隔字符串-- sep=’ ’ ,默认为一个空格
格式化输出
1.format( )方法 --配合{}向文本中传递参数,{}与变量数量一致
name = input('请输入姓名:')
age = input('请输入年龄:')
str2 = '{}今年{}岁'.format(name, age)
print(str2)
2.f-字符串
name = input('请输入姓名:')
age = input('请输入年龄:')
str3 = f'{name}今年{age}岁'
print(str3)
3.千分位符, : ,表示数据每隔三位分隔一次
num =1234567891345675678
a = '{:,}'.format(num)
print(a)
4.保留位值,:.n%, n表示需要保留的位数
round(参数1,参数2 ) -->参数1等于数值,参数2需要保留的小数位数
b = '{:.2%}'.format(67/100)
print(b)
# 运行结果:0.67
5.时间格式转换
%Y-%m-%d %h-%M-%S
from datetime import datetime #调用时间函数
time_ = datetime(2022,6,21,15,33,40)
print(time_)
c = '{:%Y-%m-%d %H-%M-%S}'.format(time_)
print(c)
运算符
数学运算符、赋值运算符、比较运算符、逻辑运算符、位运算符
数学运算符:+、-、*、/、//(整除)、**(幂运算)、%(取余)判断能否整除 判断余数是否为0
// 整除,结果向下取整,常用来取数的某一位数是多少;% 取余,常用来判断是否整除,判断奇偶性,取个位上的数值
a =124 gewei = a % 10 shiwei = a // 10 % 10 baiwei = a //100
逻辑运算符:and,or,not,结果为布尔值
and: 条件1 and 条件2,条件1和2都成立时,整体条件都成立。反之整体条件不成立
or: 条件1 or 条件2 ,有一个成立,整体成立。都不成立,整体才不成立
not -取反
比较运算符:# >、<、 ==(等等于)、!=(不等于)、>=、 <=
python中比较大小是同类型数据之间比较大小,比较结果为布尔值
赋值运算符:=、+=、-=、*=、/=、//=、%=、**=
先算等号右边,再给等号左边赋值
运算符的优先级:
a. 先算小括号整体
b.算数运算符:** 大于 *、/、%、//大于+、-
c.算数运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
分支结构
单分支结构:if、else
单分支结构语法:
if 条件:
代码段1
else:
代码段2
缩进: 一般把缩进看作四个空格,一个程序的缩进必须保持一致
多分支结构: if、 elif、else
多分支结构语法:
if 条件1:
代码段1
elif 条件2:
代码段2
…
else:
代码段N
嵌套分支:多个分支混合使用
嵌套分支语法:
if 条件1:
代码段
if 条件:
…
else:
代码段
三目运算符
三目运算符语法:
变量 =‘结果1’ if 条件 else ‘结果2’
条件成立,结果为结果1,反之为结果2
循环
循环:批量的执行某些重复的事情
循环关键字:for 、in、while、break、continue
容器:可以看作范围
for 循环 适用用明确循环次数的情况
for循环语法:
for 变量 in 容器:
代码块
for循环执行次数根据容器中元素个数确定,
for循环每次执行,变量都会从容器中顺序获取元素。
范围:range(M, N ,step)
M代表起始范围(不写,默认为0),N代表结束范围,M、N组成左闭右开区间
step表示步长,可以使用step跨指定宽度获取元素(step=1时可以不写,默认为1)
step为正整数时表示正向取元素,负整数时表示逆向取元素
while循环 更适用用不确定循环次数的情况适用。
while循环语法:
while 条件:
代码块
当条件成立时while循环才能够正常执行。
break、continue,都属于非正常结束
break:直接结束所在循环执行
continue:结束其所在循环的本次循环
嵌套循环:for循环,while循环都自身,彼此嵌套
for -else 循环
for-else语法:
for 变量 in 容器
代码块
else:
代码块
进度条的使用
from tqdm import tqdm
from tqdm import tqdm
for i in tqdm(range(1,100000000)):
pass
列表
列表:能够存储各种数据的容器,是可变的,有序的
列表的容器符号:list[ ]
列表的增加、删除、修改:
列表中的下标不能越界,不然找不到元素
list=[] # 创建一个空列表 list.append(a) # 追加 list.insert(a) # 插入 # 下标:表示元素的位置,正向下标,从0开始,从左开始插入;负向下标,从-1开始,从右开始插入 list.append(1,b) list[n]= c # 将列表中下标为n的元素修改为c del.list[1] # 删除列表中下标为1的元素 list.remove() # 彻底删除某个元素 list.pop() # 移除某个元素,能看到删除的元素 list.clear() # 将列表清空
切片:左闭右开区间,从原来的容器中提取元素组成新的容器
切片可以越界
变量[M: N: step]
M:起始范围(不写M,默认从头开始取)
N:结束范围(不写N,默认取到尾)
step步长(step=1,可以不写)
起始范围和结束范围不写的时候,冒号必须存在;步长不写时,冒号可以省略
步长控制获取的元素,每间隔步长-1获取一个元素(获取的当前元素+步长=下一个获取的元素)
M和N同符号时,step >0,M
正向下标和负向下标可以组合使用
列表的遍历
movies = ['阿甘正传','肖申克的救赎','霸王别姬','三傻大闹宝莱坞','环太平洋','猿人泰山']
# 1.直接遍历
for i in movies:
print(i)
# 2.间接遍历 通过列表的长度,控制下标进行操作 len() 查看容器长度
for i in range(len(movies)):
print(movies[i])
# 3.enumerate():将列表转换为一个可迭代对象
for i in enumerate(movies):
print(i)
# 练习:将下方列表中的元素从小到大排序。
list1 =[23, 56, 10, 55, 76, 100, 30]
# 每趟排序,排序次数+1=本趟排序的元素个数
# 外层循环 决定总的循环次数
for i in range(1,len(list1)): #比大
for j in range(0,len(list1)-i):
if list1[j] > list1[j+1]:
list1[j],list1[j+1]=list1[j+1],list1[j] #交换位置
print(list1)



