阅读量:0
注释声明
# 这是单行注释 """ 这是多行注释 """ ''' 行1,行2 '''
命名规范
- 基础变量声明 只能包含字母,下划线,数字,并且不能以数字开头
# 基础变量声明 只能包含字母,下划线,数字,并且不能以数字开头 MyNum = 1 myNum = 2 _Number = 1 _number = 2 table_name = "name" print(table_name)
数据类型
简单数据类型
# 简单数据类型 a = 1 #整型 b = 1.2 #浮点型 c = "world" #字符串 d = 'world' #字符串 e = False #布尔型 f = True #布尔型
复合数据类型
#复合数据类型 a = [1,3,4] #列表 b = {1,3,4} #集合 c = (1,3,4) #元组 d = {'n':1,'b':2} #字典
打印输出
print("hello world") #带变量的输出 a = 1 print(a) print(f"hello {a}") # 前面带个f,后接单/双引号 print("hello %d" % a) # \t 表示长空格,一个tab的长度 print("hello\tworld") # \n 表示换行 print("hello\nworld") #输出不换行 print("我叫张三还是李四呀",end="") print("我叫王五哟") #输入(默认为字符串类型) a = input("请输入:") print(a)
类型转换
# 小括号钱加入要转换的类型 a = 15 b = str(a) c = float(b) print(a) print(b) print(c)
随机数获取
import random #获取随机整数 a = random.randint(1,100) #获取随机小数 b = random.uniform(1,100) #从0到1获取随机数 c = random.random() print(a) print(b) print(c)
布尔类型
# 布尔类型, 与(and)或(or)非(not) a = False b = not a c = a or b # 其中有一个为true 则结果为true d = a and c # 两个都为true,结果才为true print(a) print(b) print(c) print(d)
流程控制语句
a = int(input("请输入你的分数:")) if a<0 or a>100: print("分数不合法") elif a<60: print("分数不及格") elif a<80: print("合格") else: print("优秀")
循环语句
# while 循环 a = 0 while a < 10: a+=1 print(a) if a == 5: break # for 循环 # 所包含的可以是列表,集合,元组,字符串都行 # range(10) 相当于[0,10) 从0开始,小于10 for i in range(10): print("值为"+str(i)) arr = [1,2,3,4,5] # 所包含的可以是数组,列表,集合,元组,字符串都行 for i in arr: print("值为"+str(i)) print("end")
字符串操作
拼接
# 字符串的拼接 s1 = "O" s2 = "H" oh = s1 + s2 print(oh) hh = s2 * 2 print(hh) ohh = s1 + s2 * 3 print(ohh)
替换
a = "hello world" a = a.replace("llo","big") # 将字符串中的llo替换成big print(a)
分割与连接
#分割 b = "my name is li lei" b = b.split(" ") # 识别空格,将其分割成一个列表 print(b) #拼接 c = "-".join(b) print(c)
大小写转换
a = "hello".capitalize() # 将第一个字母转成大写 print(a) b = "hello world".title() # 将字符串中每个单词首字母转成大写 print(b) c = "HeLLo World".lower() # 将字符串中大写转成小写 print(c) d = "HeLLo World".upper() # 将字符串中小写转成大写 print(d)
空白字符删除
e = " hello world ".lstrip() #删除左侧空白字符 print(e) f = " hello world ".rstrip() #删除右侧空白字符 print(f) g = " hello world ".strip() #删除两侧空白字符 print(g)
切片
a = "my name is lilei" #切片取值左闭右开,右边的值取不到 b = a[1:5] #切取了下标为1->下标小于5(也就是4)的范围 print(b) c = a[:5] # 切取了从开头到下标小于5的范围 print(c) d = a[1:]# 切取了从下标从1开始到结尾的单位 print(d) e = a[:]# 切取的是全部 print(e) f = a[1:5:2]#切取了下标为1->下标小于5(也就是4)的范围 然后每隔2下标取一个,即这里[1:5:2] 取的下标为1,3 print(f) g = a[::-1]#取全部,-1从末尾开始取,则是逆转字符串 print(g) h = a[-5:-1]#负号指倒着数,这里则是从倒数第五个字符取到倒数第一个字符(左闭右开,最后一个取不到) print(h)
列表操作
访问/赋值
list = [ [[1,2,4],[23,2,2],[1,3,4]], [[1,3,5],[6,7,8],[2,4,3]], [[7,5,3],[1,6,7],[1,2,3]] ] print(list[0][1]) print(list[0][1][2]) list[0][1] = ['adc','mid','top'] #赋值,这里注意,字符串不适用这种操作,因为字符串为不可变数据类型 print(list)
判断是否存在
a = 12 b = [1,False,"hello",'aa',a,[1,2,3]] if a in b: print(str(a)+"存在于列表"+str(b)+"中") else: print(str(a)+"不存在与列表"+str(b)+"中") if a not in b: print(str(a)+"不存在于列表"+str(b)+"中") else: print(str(a)+"存在与列表"+str(b)+"中")
元素添加/删除
a = 12 b = [1,False,"hello",'aa',a,[1,2,3]] # 添加元素 b.append("adv") # 在列表末尾添加元素 print(b) b.insert(1,"add") # 在指定下标前面添加元素 print(b) c = b.pop(0) #移除下标为0的元素,会返回删除的元素 print(b,c) b.remove('adv') #移除列表中的adv元素 print(b) b.clear() print(b)
复制
a = ['a','b','c','d'] b = a.copy() #复制,这种方式,a,b两个列表处于不同空间,互不干扰 a[0] = 'r' b[0] = '2' print(a) print(b) b = a #赋值复制(指针指向a),这种方式,a,b两个列表会指向同片内存,a列表更改了,b列表也会更改 print(b) a[2]='sss' print(b)
排序
a = [1,3,4,2] a.sort() #直接排序,并应用于a列表中 print(a) b = [12,3,5,3] b = sorted(b) # 不会直接应用到a中,会返回一个新的列表,供你接收 print(b)
元组
- 元组,可以认为是只读权限的列表
a = "123123123" b = [1,2,3,'yy',4,5] c = (1,2,"tt") for i in b: print(i) #循环里面的值 for i in range(len(c)): #循环里面的下标 print(i) print(c) c[1] = 3 #会报错,因为元组不可以修改
集合
- 拥有两个特性:无序性,不重复性
a = {1,3,3,4,5} print(a) #打印出来的时候会自动过滤重复的部分,即这里打印结果为{1,3,4,5}
字典
- 键值对类型的集合
a = {"age":12,"name":"李磊","sex":"man"} print(a['age']) a['age'] = 34 print(a) del a['age'] #删除字典字段 print(a) a.clear() #清空字典 print(a) a = {"age":12,"name":"李磊","sex":"man"} b =a.keys() #获取字典的键 print(b) c = a.values() #获取字典的值 print(c) d = a.items() #获取字典健值对元组的列表 print(d) for k,v in a.items(): #遍历字段,k为键,v为值 print(k) print(v)
空集合与空字典
e = {} #空字典 f = set() #空集合
函数
声明
def isDouble(n): #声明函数 return n % 2 == 0 num = int(input("请输入检测数字:")) if isDouble(num): print(f"{num}为偶数") else: print(f"{num}为奇数")
多返回值函数
def manyRe(): #多返回值函数 return 1,"23" d = manyRe() #调用多返回值函数,多返回值作为一个元组返回 print(d) e,f = manyRe() #将多返回值函数,拆包值多个变量 print(e,f)
不定长参数函数
单*不定长参数
def a(n,*arg):# 普通的参数传递,要写在不定参数的前面,不然会发生冲突 print(n) for i in arg: print(i) a(1,2,3,45,"ss","rr")
双**不定长 包裹关键字参数
def a(n,*arg,**kwargs):# 普通的参数传递,要写在不定参数的前面,不然会发生冲突 print(n) for i in arg: print(i) print(kwargs['name']) print(kwargs['n1']) a(1,2,3,45,"ss","rr",n1=23,name="huang")
默认值参数函数
def a(name,age=12):# age不传,则赋予默认值 print(name+"今年"+f"{age}岁") a("mary")