一、基础知识
- 下载:https://www.python.org(推荐3.7)
- 安装:勾选Add Python 3.x to PATH→单击Customize installation→Next→选择安装路径→install→close
- 验证:Win+R→(cmd)→(python)并回车→显示版本即成功
- 新建文件:File→New File
- 保存文件:File→Save
- 运行文件:Run→Run Module
- 打开文件:File→Open
- 快捷键:
ctrl+c 复制
ctrl+v 粘贴
ctrl+z 返回上一步
ctrl+a 全选
Shift 中英文切换
Shift+ctrl 切换输入法
CapsLock 大小写切换
二、Turtle库
- 窗体画布(canvas)
⑴概念:就是turtle为我们展开用于绘图区域,我们可以设置它的大小和初始位置。
⑵设置画布大小及颜色:turtle.screensize(800,600, "green")
#参数分别为画布的宽(单位像素), 高, 背景颜色
#turtle.screensize()不传参默认大小(400, 300)
⑶设置画布大小及位置:turtle.setup(width,height, startx, starty)
#width,height:输入宽和高为整数时, 表示像素; 为小数时, 表示占据电脑屏幕的 比例
#startx,starty:表示矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心
- import turtle #导入turtle库
- 画笔基础命令
turtle.pensize( ) # 设置画笔的宽度
turtle.pencolor("颜色名") # 设置画笔的颜色名,颜色名为英文
turtle.speed( ) # 设置画笔移动速度,速度范围[0,10]整数,数字越大越快
- 画笔运动命令
turtle.forward(距离) # 向前
turtle.backward(距离) # 向后
turtle.left(角度) # 向左
turtle.right(角度) # 向右turtle.penup() # 抬画笔
turtle.goto(x坐标,y坐标) # 将画笔移动到坐标为x,y的位置
turtle.pendown() # 落画笔turtle.circle(100) # 画一个半径为100的圆,正数逆时针,负数顺时针
turtle.circle(100,180) # 画弧线turtle.setx( ) # 将当前x轴移动到指定位置
turtle.sety( ) # 将当前y轴移动到指定位置turtle.heading( ) # 设置当前画笔为原点,朝向东
turtle.dot(None, color)# 绘制一个指定直径和颜色的圆点
- 画笔控制命令
turtle.fillcolor("颜色名") # 绘制图形的填充颜色
turtle.color("颜色名1","颜色名2") # 同时设置pencolor=颜色名1, fillcolor=颜色名2
turtle.begin_fill() # 准备开始填充图形
turtle.end_fill() # 填充完成turtle.hideturtle() # 隐藏画笔的turtle形状
turtle.showturtle() #显示画笔的turtle形状
- 全局控制命令
turtle.reset() # 清空窗口,重置turtle状态为起始状态
turtle.clear() # 清空屏幕,海龟留着原位turtle.undo() # 撤销上一个turtle动作
turtle.isvisible() # 返回当前turtle是否可见turtle.stamp() #复制当前图形
turtle.write("内容",font = ("黑体",25,"bold")) # 写字指令,,加粗(bold),倾斜(italic)
三、基础语法
- print——输出
格式:print(数据值)
- input——输入
格式:变量名=input("提示语")
注意:默认输入的类型是字符串,如想转换成数字要在input前加int/float
- 数据类型
类型 描述 说明 数字(Number) •整数(int)
•浮点数(float)
•复数(complex)
•布尔(bool)
整数(int),如:10、-10 浮点数(float),如:13.14、-13.14 复数(complex),如:4+3i,i为虚数单位 布尔(bool),True表示真,False表示假
字符串(String) 描述文本的一种类型 字符串(string)由任意数量的字符组成,用双引号表示 列表(List) 有序的可变序列
Python中使用最频繁的数据类型,可有序记录一堆数据
元组(Tuple) 有序的不可变序列
可有序记录一堆不可变的Python数据集合
集合(Set)
无序不重复集合
可无序记录一堆不重复的Python数据集合
字(Dictionary) 无序Key-Value集合
可无序记录一堆Key-Value型的Python数据集合
空值(None) 空值
- 标识符:是一串字符串,但字符串未必是标识符(作用:给变量、函数等命名)
- 规则
⑴只能由字母数字下划线组成
⑵开头不能是数字
⑶不能是关键字或函数
- 规范
⑴区分大小写
⑵见名知意且简短
- 变量:程序运行期间能改变的数据
删除变量格式:del 变量名
- 常量:程序运行期间不能改变的数据
- 赋值方式:
⑴变量名=数据值
⑵变量名1=变量名2...=变量名n=数据值
⑶变量名1,变量名2,...变量名n=数据值1,数据值2,...数据值n
- 数据类型转换
⑴浮点数转整数 int(浮点数数据值)
⑵整数转浮点数 float(整数数据值)
⑶字符串转数字 int/float(字符串数据值)注意:字符串必须是数字
- 数学功能
⑴绝对值 格式:abs(负数)
⑵最大值 格式:max(数据值)
⑶最小值 格式:min(数据值)
⑷求幂方 格式:pow(x,y)
⑸浮点数 格式:round(数据值[位数])
⑹取整/取余 格式:divmod(被除数,除数)
- 引入库
格式:import 库名
⑴import math
math.ceil(数据值) 向上取整
math.floor(数据值) 向下取整
math.modf(数据值) 取整数部分与小数部分
math.sqrt(数据值) 求平方
⑵import random
random.choice([数据值]) 取随机数
random.choice(range(数字)) 默认从0开始到数字之间的随机数,不包括数字
random.choice(字符串数据) 随机取字符串中的任意一个字符
random.randrange(开始位置,结束位置,跳跃值) :开始位置和跳跃值可不写,默认0起
random.random( ) 0和1之间的浮点数
random.shuffle(列表数据)
random.uniform(开始位置,结束位置) 在固定范围内随机取浮点数
- 运算符
⑴算数运算符: +,-,*,/,%,//, **
⑵复合运算符: +=,-=,*=,/=,%=,//=, **=
⑶复合运算符: =
⑷关系运算符: ==,!=,>,<,>=,<=
⑸逻辑运算符:
and(与):如果表达式中有一个为假,就整体为假
and(或):如果表达式中有一个为真,就整体为真
and(非):如果表达式是真的就整体为假,反之为真
⑹成员运算符:
in: 字符 in 字符串
not in:字符 not in 字符串
⑺身份运算符:
is:
is not:
- 运算优先级
**
+,-
*,/,%,//,
>,<,>=,<=
==,!=,
=,%=,+=,-=,//=
is,is not
in,not in
not,or,and
- 字符串扩展
⑴len(数据值):返回字符串长度
⑵lower():字符串大写转小写
⑶upper(): 字符串小写转大写
⑷swapcapcase():将字符串中的大写转小写,小写转大写
⑸capitalize():
⑹title():
⑺count():
⑻find():
⑼index():
⑽lstrip():
⑾rstrip():
⑿strip():
⒀split():
⒁+:字符串连接
⒂字符串*重复次数:输出重复字符串
⒃变量名[下标]:找到某个字符,通过索引下标查找,下标从0开始
⒄截取字符串部分字符:变量名[开始下标:结束下标+1]
变量名[:结束下标+1] 默认从0开始
变量名[开始下标:] 默认从指定下表到结束
四、条件判断
- 表达式:由常量、变量和运算符组成的式子
- 条件控制语句
⑴ if 表达式 :
执行的代码块
执行的代码块
...
⑵ if 表达式 :
执行的代码块1
...
else:
执行的代码块2
...
⑶ if 表达式1 :
执行的代码块1
...
elif 表达式2 :
执行的代码块2
...
elif 表达式3 :
执行的代码块3
...
else:
执行的代码块n
...
五、循环语句
- 循环语句
⑴ while 表达式 :
执行的代码块1
执行的代码块1
...
else:
执行的代码块2
...
⑵ for 变量名 in 数据集合:
执行的代码块1
...
- break和continue
break:跳出for和while循环
continuek:跳出当前循环中的剩余语句,然后继续下一次循环
六、List列表
- 概念:把具有某种性质的研究对象(元素)放在一起
- 格式
⑴初始化:列表名=[元素1,元素2,...,元素n]
⑵空列表:列表名=[ ]
⑶取值:列表名[下标]
⑷替换:列表名[下标]=数据值
- 操作
⑴相加:列表名+列表名
⑵重复:列表名*次数
⑶判断是否在列表中:数据值 in 列表名
⑷截取:列表名[开始下标,结束下标+1]
- 二维列表
格式:列表名=[[ ],[ ],[ ]]
- 列表方法
⑴append:在列表末尾添加新的元素(一个元素)
⑵extend([ , , , ]):添加多个元素
⑶insert(下标,数据值): 在指定下标处添加一个元素,不覆盖原数据,原数据向后延
⑷pop( ):删除最后一个元素
pop(下标):删除下标的值
⑸remove(元素):移除列表中的第一个匹配结果
⑹clear():清楚列表中的所有元素
⑺index( 元素 ):
⑻len(列表名):
⑼max(列表名):
⑽count(数据值):
⑾reverse( ):
⑿sort( ):
⒀浅拷贝,引用拷贝,与赋值相同:
⒁copy( ):深拷贝,内存的拷贝
⒂list( ):将元组用小括号括起来
七、元组
- 创建
变量名=( , , , )
- 查询
元组名[下标]