【python 的基本操作】
变量
#是一种存储数据的载体,计算机中的变量是实际存在的数据或者说是存储器中存储数据的一块内存空间
#变量的值可以被读取和修改
#命名规则:1由字母,数字,下划线组成,数字不能开头 2区分大小写 3不能和关键字(有特殊含义的单词)和系统保留的字(如函数)冲突
a_1=10 #定义一个变量
print(a_1)
数据类型 int又为整型,包括正整数,负整数,0(没有小数)
int_1=10
int_2=-10
print(int_1)
print(int_2)
print(type(int_1)) #type() 是查看数据类型
数据类型
float浮点型(小数类型,带小数点)例如1.2、-3.5
float_1=1.2
print(float_1)
print(type(float_1))
运算符
赋值:= 加减乘除:±*/ 取余:% 乘方:** 修改运算优先级:() 等于:== 不等于:!=
a=1 #赋值
print(a)
print(1+1) #加法
print(2-1) #减法
print(1*2) #乘法
print(4/2) #除法
print(4%3) #取余
print(2**4) #乘方,2的4次方即2*2*2*2
print(2+4*5)
print((2+4)*5) #修改运算优先级
print(1==1) #等于
print(1!=2) #不等于
数据类型
字符串(string)
str_1='abc'
print(str_1)
str_2='123'
print(str_2)
str_3='hdjahfj\n1454565' #\n是换行
print(str_3)
print(str_1+str_2) #+是连接字符串
str_4=r'jdkjd\n456355' #r是忽略转义符的作用
print(str_4)
索引:第一个数是从0开始(不是1)依次往下
#print(a[索引])
print(a[0])
print(a[3])
切片
print(a[1:])
print(a[-1]) #负数是反正取元素
print(a[1:5]) #python有个前闭后开原则
print(a[1:5:2]) #第一个数是start 第二个数是stop 第三个数是步长step,不写时默认是1
数据类型
列表list:使用中括号包起来的元素叫做列表
list_1=[1,2,3,'hd','123']
print(list_1)
#列表的索引和切片和字符串的方法一致
【字符串的基本操作】
单行字符串
str_1='this'
print(str_1)
‘’‘多行字符串’’’
str_2='''my name is
杨洪营
'''
print(str_2)
‘’’\n 换行符’’’
str_3='my name is\n杨洪营'
print(str_3)
‘’‘多加一个\是转义符’’’
str_4='my name is\\n杨洪营'
print(str_4)
‘’‘格式化操作’’’
#%s 字符串格式化符号(可以替换各种格式)
print('my name is %s'%'yang') #相当于yang替换了%s的位置
#%d 整数格式化符号
print('my name is %d'%10)
#%f 浮点数格式化符号
print('my name is%f'%1.5)
#%c 字符及ASCII码格式化符号
#%u 无符号整型
#%o 无符号八进制数
#%x 无符号十六进制数
#%X 无符号十六进制数(大写)
#%e 用科学计数法格式化浮点数
#%p 用十六进制格式化变量的地址
‘’‘format的使用’’’
#方法一
a_1='this is a {}' #a_1是原始的变量内容
a_2=a_1.format('book') #a_2是替换过的变量内容
print(a_1)
print(a_2)
#方法二(索引方式)
a_3='this is a {0} {1}'
a_4=a_3.format('good','book')
print(a_4)
a_5='this is a {1} {2}'
a_6=a_5.format('a','good','book')
print(a_6)
#方法三(关键字传参)
a_7='this is a {a}'
a_8=a_7.format(a='book')
print(a_8)
‘’‘f的用法’’’
name='yang'
print(f'my name is {name}')
name_1='hong'
pet='cat'
print(f'my name is {name_1},i like {pet}')
‘’’ .join 列表根据想要的格式拼接为字符串’’’
a=['y','a','n','g']
print(''.join(a))
print('I'.join(a)) #如果想把每个字母隔开,在''里添加
‘’’.split 字符串转化列表’’’
b='y|a|n|g'
print(b.split('|')) #字符串是用什么区分的''里就填什么
c='my name is yang'
print(c.split(' ')) #''里也可以是空格
‘’’.replace 替换’’’
d='my name is 杨'
print(d.replace('杨', '营'))
print(d.replace('my', 'me')) #可以替换任何一个
print(d.replace('m', 'M')) #也可以替换任何一个字母
‘’’.strip 去掉首尾空格’’’
e=' name '
print(e.strip())
【数据结构-列表】
#列表(list)是有序的可变元素的集合,使用中括号包围,元素之间用逗号分隔
#列表是动态的,可以随时扩展和收缩
#列表是异构的,可以同时存放不同类型的对象(字符串,整数,浮点数,列表,元祖,集合,字典等
li1=['zz',18,1.2,[1,2,3],(1,2,3),{'name':'yang','age':'26'}]
print(li1)
#列表中允许出现重复元素
li2=[1,1,'aa']
print(li2)
li=list() #创建个空列表
print(li)
li3=list('yang')
print(li3)
‘’‘列表使用-索引’’’
#默认正向索引,编号从 0 开始
li4=[1,2,3,4]
print(li4[0]) #索引0打印是1
#支持反向索引,编号从-1 开始
print(li4[-1]) #索引-1打印是4
‘’‘列表使用:切片[start(开始值):stop(结束值):step(步长)]’’’
#start 值: 指示开始索引值,如果没有指定,则默认开始值为 0
#stop 值: 指示到哪个索引值结束,但不包括这个结束索引值。如果没有指定,则取列表允许的最大索引值
#step 值: 步长值指示每一步大小,如果没有指定,则默认步长值为 1。三个值都是可选的,非必填
li_5=[1,2,3,4,5,6,7,8,9,10]
print(li_5[0:4:2])
print(li_5[2:4])
print(li_5[:4])
print(li_5[2:])
print(li_5[::2])
print(li_5[::-1])
‘’‘列表使用:运算符’’’
# * 运算符可以重复生成列表元素
li_6=[1]
print(li_6*5)
# + 加号运算符,可以将两个列表合
li_7=[1,2,3]
li_8=[4,5,6]
print(li_7+li_8)
‘’‘列表使用:成员检测’’’
#in:检查一个对象是否在列表中,如果在则返回 True,否则返回 False
li_9=[1,2,3]
print(1 in li_9)
print(4 in li_9)
#not in:和in相反
print(1 not in li_9)
print(4 not in li_9)
‘’‘列表方法’’’
.append() 在列表末尾添加新的元素
li_10=[1,2,3]
li_10.append(4)
print(li_10)
print(len(li_10)) #len() 获取列表的个数
.extend() 在列表末尾一次性追加另一个序列的多个值(用心的列表扩展原来的列表)
li_11=[1,2,3]
li_12=[4,5,6]
li_11.extend(li_12)
print(li_11)
.insert() 将对象插入列表中
li_13=[1,2,3,4]
li_13.insert(1,'yang') #意思是在索引1的位置添加'yang'
print(li_13)
.pop() 移除列表中的一个元素,并返回该元素的值
li_14=[1,2,3,4,5]
li_14.pop(2) #意思是移除列表中索引为2的值3
print(li_14)
li_15=[1,2,3,4]
li_15.pop()
print(li_15) #()内为空时,默认移除最后一个值
.remove() 删除第一个匹配的元素
li_16=[1,2,3,4,4,5]
li_16.remove(1) #1这个元素就会被移除
print(li_16)
.sort() 对列表进行升序排序
li_17=[4,6,2,3,1]
li_17.sort()
print(li_17)
.sort(reverse=Ture) 对列表进行降序排序
li_17.sort(reverse=True)
print(li_17)
li_18=['yang','ho','yin','l']
li_18.sort(key=len) #按照长度升序排序
print(li_18)
.reverse() 反向排序(注意不是降序,是反向)
li_19=[1,3,2,5,6]
li_19.reverse()
print(li_19)
‘’‘列表嵌套’’’
li_20=[[1,2,3],['yang','hong','ying']]
print(li_20[1][2]) #意思是获取列表中第二个元素中索引2的元素
li_20[1].append('go') #意思是在列表中的第二个元素末尾添加一个'go'元素
print(li_20)
‘’‘列表推导式’’’
#实例:将 1-10 中的所有偶数平方后组成新的列表
#传统的写法
a=[]
for i in range(1,11):
if i%2==0:
a.append(i**2)
print(a)
#列表推导式(简单)写法
b=[m**2 for m in range(1,11) if m%2==0]
print(b)