这是我给学生整理的知识点,可以在考前用来快速复习,日常也可以当做速查表来用。
这个文件只罗列关键的知识点,有不熟悉的内容,可以百度 "python3 关键字",
在检索结果中,看 “菜鸟教程”
设计哲学:优雅、明确、简单
语言特点:简单、开发速度快、容易学习
变量名 、函数名就是标识符
起名规则:四不
不能以数字开头不能用保留字不能用内置函数变量名之间不要有空格通过赋值创建变量
a = 99 # 整型 intst = 'hello' # 字符串 strpi = 3.14 # 浮点型 floatc = None代码缩进表示代码之间的包含和层次关系。缩进用 Tab 或者 4个空格。
+ - * / # 加减乘除// # 整除% # 求余数** # 幂运算,等同内置函数 pow(m,n) , 2 ** 3 表示 2 的3次方,还可以用 pow(2,3) 来计算注意:
# 整型 + 浮点型 还是 浮点型a = 2 + 2.0print(a) # 4.0a = 10a = a / 2 # 除运算,结果是浮点型 print(a) # 5.0a = 10a = a // 3 # 整除运算,结果是整型 print(a) # 3print(pow(2,3) == 2 ** 3) # True= += 是一种简写方式,c += a 等价于 c = c + a-= 常见 n -= 1 等价于 n = n - 2# 下面几个不常用*=/=%=//=**=# 特殊运用:# 多变量同时赋值,等同于分别赋值,看起来更简洁a, b, c = 9, 2.0, 'hello'# 元组解包,一级不考size = (800,600)w , h = size# 交换,python 特有的写法,# 可以理解为从右边的变量取出当前值来,赋给左边的变量a,b = b,amylist = [1,2,3,4,5]mylist[0],mylist[-1] = mylist[-1],mylist[0]print(mylist) # [5, 2, 3, 4, 1]==!=>>=<<=注意:字符之间的比较
print('a' < 'b') # Trueprint('Z' < 'a') # True# 字符由小到大顺序: 空字符 < 空格 < 数字 < 大写 < 小写print('' < ' ') # True# 可以通过 ord(字符) 查看字符在字符表中的序号默认10进制,其他进制的表示方式:
(1)二进制:0b 或者 0B 开头
print(0b11011) # 27(2)八进制:0o 、0O
(3)十六进制:0x、0X
pi = 3.14a = 6 / 3 # 两个整数相除也会返回浮点型b = -2.5e2 # 科学计数法 相当于 b = -2.5 * (10 ** 2) 不用括号也可以,因为 ** 优先级比较高# 内置函数 round(x[,n]),四舍五入pi = round(3.1415926) # 3pi = round(3.1415926,2) # 3.14a = 11 > 10 # Trueb = 11 < 10 # Falseprint(a,b) # True Falseandor not详细内容,可以看菜鸟教程
abc = 'hello "world"'abc = "I'm fine"abc = 'I'm fine' # 这样写是错误的abc = 'I\'m fine' # 可以用转义字符abc = """这是一个多行字符串的实例多行字符串可以使用制表符TAB ( \t )。也可以使用换行符 [ \n ]。"""print (abc)\'\"\\\r 回车\n 换行字符串和列表都属于序列类型,很多操作和方法都类似,
可以通过索引获取单个字符,索引从 0 开始
可以通过切片获取字符串片段
a = 'Hello'
b = 'Python'
例子:
# count(str)# 用来统计字符串中,某个字符或者字符串出现的次数abc = 'hello world'abc.count('l') # 返回 3abc.count('ll') # 返回 1# find(str)# 查找,返回索引abc.find('o')# 返回 4abc.find('wo')# 返回 6# join(str_list) # 将列表内容用字符串连接起来b = abc.split() # b = ['hello','world']c = ','.join(b) # c = 'hello,world'# split() # 将字符串分隔成列表,没有参数就用空格切分,有参数就以参数切分abc = 'a,b,c,d'b = abc.split() # b = ['a,b,c,d'] 只有一个元素,因为 abc 没有空格c = abc.split(',')# c = ['a','b','c','d'] # len() # 返回字符串长度abc = 'hello'print(len(abc)) # 5# 直接元素遍历,即依次访问字符串中的字母abc = 'hello world'for i in abc: print(i) '''会打印出helloworld''' # 下面代码实现同样效果,通过索引遍历abc = 'hello world'for i in range(len(abc)): print(abc[i])# 基本格式 s# %s 字符串占位符# %d 整数# %.nf 浮点数,n 表示保留 n 位小数abc = 'hello,%s,nice to meet you'%('Jerry')# 'hello,Jerry,nice to meet you'abc = '你好,%s,今天 %d 度'%('Jerry' , 26)# '你好,Jerry,今天 26 度'abc = '你好,%s,今天是 %d 号,气温 %f 度'%('Jerry' , 5 , 28.5)# '你好,Jerry,今天是 5 号,气温 28.500000 度'abc = '你好,%s,今天是 %d 号,气温 %.2f 度'%('Jerry', 5 , 28.5)# '你好,Jerry,今天是 5 号,气温 28.50 度'详见菜鸟教程
# 空列表name_list = []# 非空name_list = ['dylan','sabrina']# 由字符串方法创建name_list = 'eden,sabrina,john,tom'.split(',')# 由 list() 函数转化aTuple = (123, 'Google', 'Runoob', 'Taobao')list1 = list(aTuple) # list1 = [123, 'Google', 'Runoob', 'Taobao']str = "Hello World"list2 = list(str) # list2 = ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd']num_list = list(range(5)) # num_list = [0, 1, 2, 3, 4]# 列表生成式,一般不会考num_list = [2 * i for i in range(10)]mylist = [0, 1, 2, 3, 4]del mylist # 删除后,不能再访问 mylist# 1.delmylist = ['Google', 'Runoob', 1997, 2000] print ("原始列表 : ", mylist)del mylist[2]print("删除了第三个元素 : ", mylist)‘’‘原始列表 : ['Google', 'Runoob', 1997, 2000]删除第三个元素 : ['Google', 'Runoob', 2000]’‘’# 2.remove(元素)mylist = ['Google', 'Runoob', 1997, 2000]mylist.remove('Runoob')print(mylist)# ['Google', 1997, 2000]# 3.pop(n) # 按索引弹出, 默认 n=-1 即删除最后一个,pop(0) 弹出第一个mylist = ['Google', 'Runoob', 1997, 2000]year = mylist.pop(2)print(year,mylist)# 1997 ['Google', 'Runoob', 2000]mylist = ['Google', 'Runoob', 1997, 2000]year = mylist.pop()# 没参数print(year,mylist)# 2000 ['Google', 'Runoob', 1997]# 4.clear() # 清除全部元素mylist = ['Google', 'Runoob', 1997, 2000]mylist.clear() # mylist = []需要注意的是:
索引从 0 开始负数索引表示倒数,-1 表示倒数第一个,即最后一个mylist = [1,3,5,7,9]print(mylist[0]) # 1print(mylist[-1]) # 9需要注意的是
# mylist[start:end] 只能切到 end - 1 ,到不了 endmylist = [1,3,5,7,9]new_list = mylist[0:-1]print(new_list) # [1, 3, 5, 7]# 要想切到最后一个new_list = mylist[0:]print(new_list) # [1, 3, 5, 7, 9]# 列表逆序,一般不考new_list = mylist[::-1]print(new_list) # [9, 7, 5, 3, 1]通过索引赋值
cities = ['北京','天津','上海']cities[1] = '重庆'print(cities) # ['北京', '重庆', '上海']添加 append(元素)
cities = ['北京','天津','上海']cities.append('重庆')print(cities) # ['北京', '天津', '上海', '重庆']插入 insert(索引,元素)
cities = ['北京','天津','上海']cities.insert(1,'重庆')# 在第 2 个元素前面插入 '重庆'print(cities) # ['北京', '重庆', '天津', '上海']# count(元素)# 计数num_list = [1,2,5,3,1,6,7,2,1]print(num_list.count(1))# 3print(num_list.count(6))# 1# sum(列表)# 合计num_list = [1,2,5,3,1,6,7,2,1]print(sum(num_list))# 28# len(列表)# 列表长度num_list = [1,2,5,3,1,6,7,2,1]print(len(num_list))# 9# min(列表) max(列表) # 返回最小元素、最大元素print(min(num_list),max(num_list),sep = ',') # 1,7# 求平均值,组合上面的函数avg = sum(num_list) / len(num_list) # 3.111111111111111# sort()# 默认升序,即从小到大num_list = [1,2,5,3,1,6,7,2,1]num_list.sort() #[1, 1, 1, 2, 2, 3, 5, 6, 7]num_list.sort(reverse = True) # [7, 6, 5, 3, 2, 2, 1, 1, 1] 逆序,从大到小# sorted(列表) # 内置函数,返回一个排序后的新列表,原列表不发生变化num_list = [1,2,5,3,1,6,7,2,1]list2 = sorted(num_list)print(num_list,list2) #[1, 2, 5, 3, 1, 6, 7, 2, 1] [1, 1, 1, 2, 2, 3, 5, 6, 7]list1 = [1,2,3]list2 = ['a','b','c']# + 列表连接list3 = list1 + list2print(list3) #[1, 2, 3, 'a', 'b', 'c']# * 重复list3 = list1 * 3print(list3) #[1, 2, 3, 1, 2, 3, 1, 2, 3]list3 = list2 * 2 + list1 print(list3)# ['a', 'b', 'c', 'a', 'b', 'c', 1, 2, 3]# 生成字符串 join(列表) 和 字符串.split() 是逆运算st = ''.join(list2)print(st)# 'abc'st = ','.join(list2)print(st)# 'a,b,c'# 要想输入一个列表,可以用下面方式st = input('请输入学生姓名,以空格分隔:')student_list = st.split()# int() 可以将浮点数和字符串转化为整数# 注意,转化字符串时,字符串不能包含除数字以外的字符a = '20.6'b = int(a)# 错误,常考# 转化浮点数,会舍弃小数点后面的数字,不是四舍五入a = 20.6b = int(a) # b = 20需要输入整数或者浮点数时,直接套在 input() 外面转化:
m = int(input(‘请输入第一个整数:’))num1 = float(input(‘请输入:’))if 条件1: passelif 条件2: passelse: pass易犯错误:
#1 写条件的时候,不要把 == 写成 =,如下:if m % i = 0 and n % i = 0: #2 注意加条件后面加上 :#3 注意 缩进# 常见结构for i in range(15): if i == 10: break if i == 6: continue print(i)else: print('end') # else 在 没有执行 break 时,才会被执行,对比下面的程序for i in range(10): if i == 10: break if i == 6: continue print(i)else: print('end')break 跳出循环continue 继续循环,其后面代码不执行else 在没有执行 break 时,才会被执行range(start,end,step)range(10) 相当于 range(0,10,1)range 取值时,只能取到 end - 1for i in range(1,5): print(i,end = '')# 会打印 1234 for i in range(0,5,2): print(i,sep = ',',end = '')# 会打印 0,2,4str = 'hello world'for i in str: passmylist = [1,5,8,7,3]for i in mylist: pass一般在不确定 循环范围的时候,用 while 循环
while 条件: pass# 或者,用 break 退出while True: if 条件: break passfor i in range(10): pass# 等价 while 写法i = 0while i < 10: # do something i += 1 基本结构
try: # 肯能出现异常的语句except: # 处理异常else: # 没有异常的情况下,会执行这里的语句finally: # 不管有没有异常,都会执行常见的异常:
除 0 错误: print(2/0)访问超出列表范围类型转换错误,int('3.51')常用的内置函数
注意:
count() 不是内置函数,而是字符串和列表类的方法,所以调用的时候,前面要写对象名
st = 'hello world'print(st.count('o')) # 2基本命令与框架
import turtle as tt.speed(0)# 设置画笔速度,0 ~ 10t.pencolor('blue')# 画笔颜色t.pensize(3)# 画笔宽度t.forward(100) # 沿画笔方向前进 100,参数值为 -100 时,则背离画笔方向前进,画笔方向不变t.left(90)# 左转 90 度 ,也可以用 t.right(-90) 实现t.right(120)# 右转 120 度t.penup()# 抬笔t.pendown()# 落笔t.goto(100,200)# 移动到指定坐标t.hideturtle() # 隐藏 turtle 箭头t.done()# 停止画笔正方形:
import turtle as tt.pencolor('blue')for i in range(4):t.forward(200) t.left(90)t.hideturtle() t.done()三角形:
import turtle as tt.pencolor('blue')for i in range(3):t.forward(200) t.left(120)t.hideturtle() t.done()五角星
import turtle as tt.pencolor('red')t.pensize(3)for i in range(5):t.forward(200) t.right(144)t.hideturtle() t.done()六边形
import turtle as tt.speed(2)t.pencolor('blue')t.left(90)for i in range(6):t.forward(80) t.left(60)t.hideturtle() t.done()选择题中出现 turtle 相关的题目,一般是填写 循环次数,或者 旋转角度
技巧:
看一下图形有多少条边,
程序循环中,每次画几条边(forward),
简单计算一下,即可得循环次数
旋转角度:360 / 边数
编程题:
一般会要求画简单图形的多重组合,需要用到多重循环
里层的循环用来画基本图形(三角形或者长方形、多边形)
外层循环,用来画多个基本图形。
注意,基本图形之间的相对角度,在每画完一次基本图形后,旋转一定角度(一般是 360/图形数量)
案例1:四个长方形
import turtle as tt.speed(0)t.pencolor('blue')for i in range(4):# 画 4 个长方形 for j in range(2):# 内循环,画长方形 t.forward(200) t.left(90) t.forward(100) t.left(90) t.left(90)# 此处较关键t.hideturtle() t.done()案例2:三个三角形
import turtle as tt.speed(0)t.pencolor('blue')for i in range(3):# 画三次 for j in range(3):# 画三角形 t.forward(200) t.left(120) t.left(120)# 画一个图形时,做一定旋转t.hideturtle() t.done()案例3:稍微复杂一些
通过观察,应该是 6 个六边形
import turtle as tt.speed(0)t.pencolor('blue')t.left(90)# 调整初始方向for m in range(6): # 画 6 次 for i in range(6): # 画六边形 t.forward(100) t.left(60) t.left(60)t.hideturtle() t.done() 版权声明:我们致力于保护作者版权,注重分享,被刊用文章【python考试(纯干货)】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!;
工作时间:8:00-18:00
客服电话
电子邮件
beimuxi@protonmail.com
扫码二维码
获取最新动态
