Python初见1
零蚀
基本语法
- 注释
- 变量
- 输入输出函数
- 运算符
- 比较运算符
- if逻辑运算符
- 循环
- pass占位
- 其他
(开发工具mac)
-
变量
动态类型
- 案例
age=30 age = float(30) print('a',age,'d','as') age='美丽' print('a',age,'d','as') # 多变量定义,不能不指定变量的初值 ver1, ver2 = 30, 'b' print(ver1, ver2) a=int(input('请输入年龄‘))
变量 类型 案例 int 整形 ago = 3 float 浮点类型 ago = 3.0 bool 布尔类型 ago = True complex 复数型 ago=4+5j str 字符串类型 age=‘string’ list 列表 l=[1,2,‘s’] tuple 元祖 temp=(‘a’,‘b’) set 集合 s={1,2,3} dict 字典 d={‘s’:1,(1,2,3):‘fa’,1:‘p’} str,list,tuple,set,dict 都是非数字类型
- 取值:str[],list[],tuple[],dict[],去了set,因为set无序
- 可以连接+,重复*,切片(取部分)
- list
list = ['j', 'z', 'j'] # list添加 list.append('d') # list插入 list.insert(0, 'k') # list 后追加一个列表 list.extend(list) # list移除第一个元素,两个方法 del list[0] # list 删除指定元素,并返所对应的值 list.__delitem__(0) list.pop(0) # 删除最后一个并return a = list.pop() # 清空 list.clear() #查找对应的元素位置(下列是int类型) s = list.index("j") # 求元素在列表中出现的次数 count = list.count('j') ''' 其他操作 ''' print(list) print(list.__getitem__(0)) for a in list: print(a)
- list排序
# 升序 默认reverse=False myList.sort() # 降序 myList.sort(reverse=True) # 逆序 myList.reverse() # 最大值 mixValue = max(myList) # 最小值 inValue = min(myList)
- list嵌套
stu = [[1, 2], [3, 4, 5]] print(stu[1][0])
- tuple简介
# 元祖内容基本和list一致,只是不能修改,删除,写法改动,等 t=(1,2,3,4) t= 1,2,3,4 (自动组包:多个数据自动组合为一个元祖) a , b , c , d = t (自动解包,将元祖的每个元素分给了每个元祖) # 元祖只有一个元素不能写作 (1),这是int类型,当解包形成单个元素时,不为tuple类型 # 正确方式如下 t = (1,) # 直接交换数据(组包解包的原理) a ,b = b , a # 格式化的输出(解包的原理) print('%d,%d'%t) print('%d,%d'%(t[1],t[2])) # list 和 tuple 可以相互强制类型转换
用处:
- 作为自动组包类型;
- 自动解包的类型
- 交换数据
- 格式化的输出
- tuple元素不可修改
-
类型强行转换
int()
float()
…
-
输入输出
- 案例
age = 0 a = input('本哈是风口浪尖啊'*4 + str(age) + ':') a = input('本哈是风口浪尖啊 age=%d' %age) print(a) name, age='asIf',0 # 不足6位,用0补齐 print('age=%06d'%age) # 保留2位小数 print('age=%.2f'%age) #多个参数打印 print('本哈是风口浪尖啊 name=%s age=%d'%( name, age )) # 打印出类型 print(type(age)) # 打印出% print(‘%d%%’%age)
-
if逻辑运算符
a = int(input('你的年龄:')) if a >= 30: print('已经成年') else: if a < 10: print('10') elif a < 20: print('20') elif a < 30: # 同else if(){java} print('30') else: print('another')
-
循环
while循环♻️
a = 0 while a < 100: # python里面没有++a和a++ a += 1 print(a) # continue 跳过,break 跳出(同java)
for循环♻️
b = 'Weakness is the sin' # if ‘s’ not in b : # for 操作容器里的匀速 # 打印b中所有字符 for a in b: print(a) for a in range(0, 10): print(a) a += 1
for…else…
# 如果范围不再for的范围内,则走else语句 #正常逻辑循环,等for结束走else语句 for a in b: if a in c: print('b存在元素在c里面') break else: print("b没有元素在c里面")
range
# 获取rang中脚标为1的元素(0始) # 打印【0~100)中所有整数,r=rang(100),r=rang(整数min,整数max) r=range(10) r.__getitem__(1)
案例1:九九乘法表(while)
i = 0 while i < 9: j = 1 i += 1 while j <= i: if j == i: print('%d x %d = %d ' % (j, i, i * j)) else: # end表示尾部处理方式,'/t'对齐,' '空格,''不处理, print('%d x %d = %d ' % (j, i, i * j), end='') j += 1
案例2:冒泡排序
# 从后往前的冒泡方式 myList = [1, 8, 2, 7, 4, 5, 6.5] # i只负责循环次数 i = myList.__len__() - 1 j = i - 1 while i > 0: # 比较总是从尾部开始 j = myList.__len__() - 2 # 将前面冒泡排好的部分舍去 while j >= myList.__len__() - 1-i: if myList[j] > myList[j + 1]: temp = myList[j] myList[j] = myList[j + 1] myList[j + 1] = temp j -= 1 i -= 1 print(myList)
案例3:选择排序
# 选择排序 # 从list头部开始对list的剩下的首元素和其他元素比较 # 若前者大于后者互换 for i in range(0, myList.__len__() - 2): for j in range(i + 1, myList.__len__() - 1): if myList[i] > myList[j]: temp = myList[i] myList[i] = myList[j] myList[j] = temp print(myList)
-
pass占位
''' pass只是一个占位符,不做任何事情, 比如if不做任何事情,就会报错,必须 要有填充代码 ''' # if 内啥也不做 a = False if a: pass # 循环内啥也不做 while a: pass #空白处啥也不做 pass
-
其他
# 获取字符串的长度 b = 'Weakness is the sin' length=b.__len__() # 获取字符串的脚标 b.__getitem__(8) # 生成随机数 import random random.randint(0, 2) # 随机数在【0~2】
🔗 前言
🔗 Python 基础列表
🔗 Python初见2
🔗 Python初见3
🔗 Python初见4
🔗 Python初见5
🔗 Python初见6
🔗 Python初见7
🔗 Python初见8 – 飞机大战
🔗 Python初见9— 坦克大战