python学习
目录
2.赋值运算符 += -= *= /= //= %= **=
第一章 基础语法
一、python注释
1.单行注释:以#空格开头;快捷键 Ctrl+/ 2.多行注释:三引号开头和结尾;
二、输入输出
1.所有通过input的内容输出类型都是字符串型
a=int(input('请输入一句话:'))
2.格式化字符串
# 1.格式化字符串字面值
age=10
print(f'小明今年{age}岁')
# 2.字符串的format()方法
print('{}今年{}岁'.format('小王',10))
# 3.%的用法,整数输出
num=3
print('%d'%num)
3.
浮点数输出
print('%.2f'%num)
4.字符串输出
str_1='abc'
print('%s'%str_1)
5.end参数默认为'\';可以随意替换
print(1,2,3,end='\t')
print('abc')
三.运算符
1.算数运算符:
加(+) 减(-) 乘(*) 除(/) 整除(//) 取余(%) 幂运算(**)
a = 4
b = 2
print(a / b) # 得到的结果都是浮点数
print(a // b) # 被除数和除数无论是否是整数,结果都是整数(向下取整)
print(9 % 4)
print(a ** b)
2.0
2
1
16
2.赋值运算符 += -= *= /= //= %= **=
3.逻辑运算符 and、or、not
四.分支结构
if expression :
suite
elif expression :
suite
else :
suite
五.循环
1.for-in循环:确定具体次数的循环
total=0
for i in range(1,101):
total += i
print(total)
2.while循环:不确定循环多少次
sum=0
flag=True
i=1
while flag:
if i <=100:
sum+=i
i+=1
else:
flag=False
print(sum)
1.range函数:左闭右开的区间
range(101):产生0-100的整数
range(2,101):产生2-100的整数
2.range(0,101,2):从0开始,步长为2开始加,到100截止
3.break:终止所在循环
4.continue:终止当前本次循环,进入下一次循环
六.字符串
1.拼接重复
# 拼接 +
s1='hello'
s2='word'
print(s1+' '+s2)
# 重复 *
print(s1*3)
2.比较
print('a'>'b')
end:False
3.获取长度
print(len(s1))
end:4
4.ord()将字符转换成ASCII码
print(ord('a'),ord('l'))
end:97 108
5.成员运算:in或not in
s1='abce'
print('a' in s1)
print('d' not in s1)
end:True
True
6.索引和切片
s2='闲时与你立黄昏,笑问灶前粥可温'
# 索引
print(s2[0]) # 正序索引从0开始
print(s2[-1]) # 倒序索引从-1开始
# 切片
print(s2[:])
print(s2[0:len(s2)-1]) #切片也是左闭右开的区间
print(s2[::2]) #从0开始,步长为2
print(s2[-1:-10:-1])
end:闲
温
闲时与你立黄昏,笑问灶前粥可温
闲时与你立黄昏,笑问灶前粥可
闲与立昏笑灶粥温
温可粥前灶问笑,昏
7.循环遍历字符串
for i in s2:
print(i)
8.输出字符串每个位置的索引
for i in range(len(s2)):
print(i)
for i in range(len(s2)):
print(i,s2[i])
9.字符串的方法
9.1将字符串的首字母变成大写
9.2将字符串中每个单词的 首字母变成大写
9.3将每个单词变成大写
9.4将每个字母变成小写
s3='hello word'
print(s3.capitalize()) # 将字符串的首字母变成大写
print(s3.title()) # 将每个单词的首字母变成大写
a=s3.upper() # 将每个单词变成大写
print(a)
print(a.lower()) # 将每个字母变成小写
10.查找操作:index()或find()
#index()和find()默认从左到右查找,找到元素便停止
print(s3.index('l'))
print(s3.index('a')) # 找不到元素报错
print(s3.find('l'))
print(s3.find('a')) #若找不到元素,返回-1
print(s3.find('l',3)) #从索引为3的位置开始找,此方法可找到第2个l
print(s3.rfind('d')) # 从右开始查找
11.center()将字符串长度补成长度为N的字符串,
print(s3.center(20,'*'))
print(s3.rjust(20,'*'))
print(s3.ljust(20,'*'))
*****hello word*****
**********hello word
hello word**********
12.修剪操作
# strip()将字符串左右两边的空格,转义字符去掉
s = ' dsafhjkdsafhsaHDJ \n\t'
print(s.strip())
dsafhjkdsafhsaHDJ
七.列表
1.列表:一系列元素按照顺序进行排列 list=[]
list = ['hello word', 123, 12.22, [1, 2, 3], (11, 12), {12, 23}, {'name': '张三'}]
2.列表的运算符
list1 = [10, 20, 30]
list2 = ['a', 'b', 'c']
print(list1 + list2)
print(list1 * 3)
3.列表的成员运算:in\not in
print(10 in list1)
4.获取列表长度:len()
print(len(list1))
5.索引和切片
# 索引
print(list1[0])
print(list1[-1])
# 切片
list3 = [10, 20, 30, 40, 50, 60, 70, 80]
print(list3[:])
print(list3[2:5])
print(list3[::2])
print(list3[-1::-1])
print(list3[::-2])
6.列表的循环遍历
7.列表中的方法
添加: 1.append()在列表尾部添加元素 2.insert()在指定位置添加元素 删除: 1.del()删除指定的索引位置元素 2.pop()删除指定的索引位置元素后,可以复制给一个变量,进而知道删除的元素是什么 3.remove()删除列表中具体的某个元素
list4 = []
list4.append(10)
list4.append('a')
list4.append('b')
print(list4)
list4.insert(1, 'java')
list4.insert(2, 'python')
print(list4)
del list4[2]
print(list4)
a = list4.pop(0)
print(list4)
print(a)
list4.remove('java')
print(list4)
8.列表中某个元素的位置和出现次数
list5=['abc',10,20,20,50]
print(list5.index('abc'))
print(list5.count(10)) # 统计10出现的次数
9.排序
list6=[10,9,8,4,6,2,1]
list6.sort()
print(list6)
list6.reverse() #逆序输出
print(list6)
10.列表生成式
# 列表生成式
list7=[]
for i in range(1,11):
list7.append(i)
print(list7)
# 使用列表推导式!!!!
list7=[i for i in range(1,11)]
print(list7)
11.比较
1.比较运算:要将2个列表中的相同索引位置的元素必须是同数据类型 2.列表比较大小,比较的是列表中相同索引位置元素的大小
八.元组
1.定义
# 定义一元组
tuple_1 = (25,)
print(type(tuple_1)) # type()用来获取数据类型的方法
tuple_2 = (25) # 不加,不是一元组
print(type(tuple_2))
tuple_3 = ('abc')
print(type(tuple_3))
# 创建二元组
tuple_4 = (10, 20)
# 创建空元组
t4 = ()
2.获取元组长度
print(len(tuple_4))
3.拼接
4.成员运算
5.索引切片
6.打包解包
# 元组的打包
a = 1, 2, 3
print(a, type(a))
# 解包:等号左边数量要和解包的元组长度相等
i, j, z = a
print(i, j, z)
# 星号表达式:用来解决等号左边数量不足,带星号的可以接受多个元组。优先考虑没有*的表达式
b = (1, 2, 3)
i, *j = b
print(i, j)
7.交换2个变量的值
i,j=j,i