Python一级考试笔记

Python一级考试笔记【源源老师】

前置知识:(了解即可)

  1. Python常见的几种编程环境:IDLE(自带)、Visual Studio Code、Jupyter、pyCharm;

  2. python版本:python3 和 python2(版本之间互不兼容)

  3. IDLE的两种开发模式:交互模式、文件模式

  • 交互模式

  • 文件模式(最常见的Python文件后缀名:.py 或者.pyw)

  1. IDLE操作
命令解释
Ctrl+N新建文件(N:new)
Ctrl+S保存文件(S:save)
Ctrl+O打开文件(O:open)
F5运行程序
Tab代码缩进
#单行代码注释
‘’’ ‘’’多行代码注释
  1. python保留字

Python中保留字是指被编程语言所保留的特殊单词,这些单词有着特定的含义和功能,不能被用作变量名、函数名或类名等标识符。Python有35个保留字,比如:False,True,None,and,as,def,del,elif,else,for,while,from,if,import,in,is,not,or 等等。

01. input()输入函数

如果想让用户在键盘输入内容,可以使用 input() 函数;

说明语法
函数名input(object)
参数object–可以是空。
返回值类型字符串
# input()输入的内容,不管字面上是什么都是字符串类型
a = input()
print(a)
print(type(a))
  • 如果加上提示内容,可以很好的提示用户正确的输入;
# 有提示的输入
b = input("请输入一个数,1-9之间:")
print(b)

通过输入的两个数值进行加减运算,必须进行转换;

# 通过输入进行数值计算
c = int(input("请输入第一个数,1-9之间:"))
d = int(input("请输入第二个数,1-9之间:"))
print("%d+%d=%d"%(c, d, c+d))

02. print()输出函数

  • 简单的输出
# 注意1:括号和双引号(单双均可)必须是英文状态下的
print("Hello, Python")

# 简单的数字输出
print(123)
  • 输出的内容可以多条数据,默认空格隔开显示,可以通过参数更改:
# 输出时,默认会以空格来隔开显示
print(123, 456, 789)

在这里插入图片描述

  • sep:用来间隔多个对象,比如这里我们用 “-” 来间隔
# 注意,sep参数的值需要通过双引号包含
print(123, 456, 789, sep="-")

在这里插入图片描述

  • 默认情况下一个print输出后会自动换行
print(123)
print(456)
  • 上面的例子等价于这样:
print(123, end="\n")
print(456)

在这里插入图片描述

  • end: 可以指定结尾用什么符号
# 我们指定输出123后,用 --- 作为结尾
print(123, end="---")
print(456)

在这里插入图片描述

print 总结:

说明语法
函数名print(objects, sep=’ ‘, end=’\n’)
参数objects --表示输出的对象。
sep – 用来间隔多个对象。
end – 用来设定以什么结尾。默认值是换行符 \n。
返回值

03. 变量

1. 变量的声明

# 声明一个变量
# 注意1:= 不是等于的意思,是 赋值 的意思
# 注意2:阅读代码从右边向左边阅读,意为:将数字123赋值给变量a
a = 123
# 输出a
print(a)
print(A) #Python中的英文是区分大小写的,大写的A和小写的a不是一种东西;这样写会报错
# a变量被替换
a = 456
print(a)

2. 命名的规则

  • 变量名可以包含字母、数字、下划线,但数字不能在变量名首位

    • abc(合法)、a123(合法)、_xyz(合法)、2b(不合法)
  • Python中的关键字(即保留字)无法作为变量名,比如:def、class,使用会直接报错

# 关键字错误命名
def = 123
class = 123
print(class) #报错啦

# 中文命名
xiaoMing = 12
print(xiaoMing) #打印12

04.字符串

1.字符串写法

Python字符串支持使用单引号、双引号和三引号三种写法。

print('Hello World!!!')
print("Hello World!!!")
print('''Hello World!!!''')

2. 字符串的拼接

字符串的连接可以使用 +号 或者 逗号 ,具体如下:

# 字符串拼接,+号紧凑,逗号松散
print("我"+"和"+"你")
print("我" + "和" + "你")
print("我","和","你")

# 变量同理
a = "我"
b = "你"
print(a + b)

结果:在这里插入图片描述

我们还可以使用 * 号来对字符串进行拼接组合,比如:

a = "*"*3
print(a) #结果:***

下面的例子中,如果我们想要输出字符串小明666,直接用加号拼接是不行的,这样会报错。

name = '小明'
num = 666
res = name + num
print(res)

使用"+"运算符连接字符串时,两边的操作数必须都是字符串类型。如果有其他类型的操作数,需要先将其转换为字符串类型,再进行拼接。正确的做法是:

name = '小明'
num = str(666)
res = name + num
print(type(res))  #<class 'str'>

3. 输出格式

格式符说明
%d格式化整数,会直接取整
%f格式化浮点数,可以设置保留的小数点
%s字符串
name = "小明"
age = 3.33
weight = 1.23456
print("我的名字叫%s,今年%d岁了,身高%.2f"%(name, age, weight)) #我的名字叫小明,今年3岁了,身高1.23
  • %10.2f:可以理解为10个占位符,不足的用空格占用;
  • %10s和%-10s:可以理解为占用10个位置,占用前面和占用后面的区别;

05. 布尔类型

1. 关系运算符

布尔类型的值,是专门用于各种表达式的判断,表达式的运算符如下:

名称关系运算符表达式返回值
大于>成立返回True,否则为False
小于<成立返回True,否则为False
等于==成立返回True,否则为False
大于等于>=成立返回True,否则为False
小于等于<=成立返回True,否则为False
不等于!=成立返回True,否则为False
# 表达式返回值
print(6 > 5) #True
print(6 > 7) #False
print(6 < 7) #True
print(6 < 5) #False
print(6 == 6) #True
print(6 == 7) #False
print(6 >= 7) #False
print(6 <= 7) #True
print(6 != 7) #True

2. 逻辑运算符

除了关系运算符之外,还有一种叫做逻辑运算符,具体如下:

名称逻辑运算符表达式返回值
andx and yx和y同时为True时,返回True,否则返回False
orx or yx和y只要其中之一为True,返回True,否则返回False
notnot xx为True时,结果为False,否则为True
print(0 and 1) #0
print(1 and 2) #2
print(0 or 1) #1
print(1 or 2) #1

# 表达式
print(5 > 6 and 5 > 4) #False
print(7 > 6 and 5 > 4) #True
print(5 > 6 or 5 > 4) #True
print(5 > 6 or 5 < 4) #False
print(not 5 > 6) #True
print(not True) #False

06. 类型转换

1. 数据类型

类型名转换函数说明及示例
整型int()将合法的字符数值或浮点数转换成整数
字符串型str()将任意内容转换成字符串型
浮点型float()将合法的字符数值或整数转换成浮点数
布尔型bool()将任意内容转换成布尔型

为了判断一个变量或内容,可以采用**type()**函数;

说明语法
函数名type(object)
参数object --需要判断类型的内容
返回值返回一个<class ‘类型符号’>
# 使用type()获取四种类型
print(type(10))
print(type(10.15))
print(type("哈哈"))
print(type(True)) #注意:首字母需要大写
print(type(False)) #注意:首字母需要大写

结果:在这里插入图片描述

2. 类型转换

print(int("123"))
print(int(123.34))
print(float("123"))
print(bool(0))
print(bool(1))
print(type(str(123))) # 将整型转换成字符串时,无法直观的检查出,所以需要用type()判断;

结果:在这里插入图片描述

  • 以上类型转换,有一些条件:

    • 转换成整数时,包含字母或其它字符都不能转成整数,只有纯数字才可以
    • 浮点数同上;
    • 布尔型只能转换成True和False;

07. 四则运算

1. 算术运算符

虽说叫做四则运算,但其实运算符往往不止加减乘除这四种:

运算符号格式结果
+1 + 12
-2 - 11
*3 * 412
/6 / 23.0
整除//9 // 71
求余%10 % 82
**2**38

注意:

  • 在编程语法中乘法 x 用 ***** 号代替,除法 ÷/ 代替。
  • 除法 /保留小数的,而整除 //直接取整的。
  • 幂运算中:2**3,2为底数,3为指数,换算成乘法为:2 x 2 x 2 = 8。

python运算符的优先顺序:

运算符说明Python运算符优先级顺序
小括号( )高——>低
乘方**
乘、除、取余、取整*、/、%、//
加减+、-
比较运算符==、!=、>、>=、<、<=
逻辑非not
逻辑与and
逻辑或or
#小括号
number = (3 + 2) * 2
print(number) #10

#乘方
number = 3 * 2 ** 2
print(number)  # 12

number = 8 / 2 ** 2
print(number)  # 2.0

number = 7 % 2 ** 2
print(number)  # 3

number = 7 // 2 ** 2
print(number)  # 1

#乘法
number = 5 + 2 * 2
print(number)  # 9

#除法
number = 5 - 2 / 2
print(number)  # 4.0

#取余数
number = 5 - 2 % 2
print(number)  # 5

#取整数
number = 5 + 2 // 2
print(number)  # 6

#加减运算高于比较运算
print(5 < 3 + 2)  # False
print(5 == 3 + 3)  # False

#比较运算高于not
print(not 6<=6) #False

#not高于and
print(True and not False) #True

#and高于or
print(True or True and False) #True

2. 变量自运算

  • 自运算,就是让变量本身的值累计运算,比如累加、累减等;
    • += 累加,a += 1,相当于a = a + 1;
    • -= 累减,a -= 1,相当于a = a -1;
    • 注意:Python不支持a++语法
# 累加
a = 1
a+=1
print(a) #2

08. 小海龟turtle库

1. turtle库入门

turtle,即:海龟;和随机库一样,是Python中一种 绘图工具 库,也叫 海龟库。默认是从原点(0,0)位置开始画图。

在这里插入图片描述

法名返回值说明方法简写
.forward(d)面朝当前方向前进d个距离,d单位是像素fd
.back(d)同上,后退bk
# 引入海龟库,并给海龟取别名为t
import turtle as t

# 画一笔,向前(默认向右)画100步(单位:像素)
t.forward(100)

2. 角度的概念

在绘制图形时,有时需要转向,那么就需要调整前进箭头的指向(角度)即可

方法名方法说明
.left(a)左转a度,a的取值范围:0~360
.right(d)右转
import turtle as t
# 向前100步
t.forward(100)
# 拐个弯,向左拐90度
t.left(90)
# 再向前100步
t.forward(100)
# 拐个弯,向右拐90度
t.right(90)

结果:在这里插入图片描述

3. 设置箭头造型

为什么叫小海龟呢?因为箭头是可以设置为小海龟的,当然,默认是箭头

方法名方法说明
.shape()箭头的造型:arrow、turtle、circle、square、triangle、classic
.hideturtle()绘图结束后,隐藏箭头
.showturtle()显示海龟
import turtle as t
# 造型设置为海龟
t.shape('turtle')
t.forward(100)
t.hideturtle()

09. 绘制多种图形

1. 正方形

如图:在这里插入图片描述

分析:正方形四条边相等,拐弯的角度为:360 / 4 = 90°

import turtle as t
t.shape('turtle')
t.forward(100)
t.left(90) #左拐90度 
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)

2. 等边三角形

如图:在这里插入图片描述

分析:等边三角形三条边相等,内角和为180度,所以每一个内角为180/3=60度,外角为120度

import turtle as t
t.shape('turtle')
t.forward(100)
t.right(120) #右拐120度 
t.forward(100)
t.right(120)
t.forward(100)

3. 圆

圆的绘制,有自己单独的方法:.circle()

方法名方法说明
.circle(r,extent,steps)绘制一个圆,可以设置三个参数,其中extent,steps可以省略
上面参数:参数说明:
rr是半径,若r>0,左拐画圆;若r<0,右拐画圆
extent可选值,弧形的角度
steps可选值,多边形边数
  • 圆圈:在这里插入图片描述
import turtle as t
t.shape('turtle')
t.circle(100)
  • 半圆:在这里插入图片描述
import turtle as t
t.shape('turtle') 
t.circle(100,180)
  • 圆内三角形:在这里插入图片描述
import turtle as t
t.circle(50,steps=3)
  • 圆内多边形:在这里插入图片描述
import turtle as t
t.shape('turtle') 
t.circle(100,360,6)

思考:画一个小雪人,如图所示:在这里插入图片描述

方法一:

import turtle as t
t.shape('turtle')
t.circle(50)
t.circle(-100)

方法二:

import turtle as t
t.shape('turtle')
t.circle(50)
t.right(180) #海龟向右旋转180度【当然,向左旋转180度也可以】
t.circle(100)

4. 五角星

如图:在这里插入图片描述

分析:五角星的五个内角和为180度,所以每一个内角为180/5=36度,外角为144度

import turtle as t
t.shape('turtle') 
t.forward(100)
t.right(144) # 右拐144度
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.forward(100)
t.right(144)
t.forward(100)

10. 画笔设置

1. 画笔设置

海龟库绘制时的线条是可以设置的:包括颜色、粗细以及绘制速度等

方法名方法说明
.speed(s)设置绘图的速度:0或大于10表示瞬间绘制,1~10之间,1最慢,10最快
.color(p,q])p: 边框和画笔 q:填充颜色【如果只有p参数,则设置所有颜色,包括边框和填充颜色】
.pencolor©设置画笔颜色,绘制的线条以及笔头的轮廓部分
.pensize(s)设置画笔粗细,填入数字,最小值1
import turtle as t
t.shape('turtle')
# 设置颜色,red:边框和画笔 green:填充
t.color("red","green")
t.circle(100) #注意画笔这些要提前在画圆之前设置好

结果:在这里插入图片描述


我们再看一下,如果设置了t.pencolor,会出现什么情况:

import turtle as t
t.shape('turtle')
t.color("red","green")
# 设置画笔颜色
t.pencolor("yellow")
t.circle(100)

结果:黄色边框覆盖了红色边框,因为t.pencolor颜色设置是在t.color之后,如果他们交换位置,那么红色边框将会覆盖黄色边框。

在这里插入图片描述

除此之外,我们还可以设置画笔粗细和设置绘制速度

import turtle as t
t.shape('turtle')
t.color("red","green")
# 设置画笔粗细
t.pensize(20)
# 设置绘制速度
t.speed(8)
t.circle(100)

结果:在这里插入图片描述

2. 填充设置

如何在绘制好的封闭区域进行填充呢?比如一个圆

方法名方法说明
.fillcolor©设置填充的颜色
.begin_fill()在需要填充的封闭区域前设置
.end_fill()在需要填充的封闭区域后设置
import turtle as t
t.shape('turtle')
t.color("red","green")
t.begin_fill() # 开始填充
# t.fillcolor("orange") #可以在这里改变填充的颜色,将绿色改为橙色
t.circle(100)
t.end_fill()  # 结束填充

结果:在这里插入图片描述

3. 画布设置

画布:绘图的区域,我们可以设置它的大小和初始位置。

方法名方法说明
.screensize(width,height,bg)设置画布的大小【默认大小为(400,300)】
上面参数参数说明
width
height
bg背景颜色
import turtle
turtle.screensize(200,200,'green')

结果:在这里插入图片描述

11. 抬笔和落笔

1. 坐标的概念

默认情况下,海龟绘图在屏幕原点(0,0)位置开始。我们可以设置对应坐标让其在指定位置绘制.

方法名说明
.goto(x, y)到达指定坐标(x,y)
import turtle as t
t.circle(100)
# 将画笔在y轴上移50的位置
t.goto(0,50) 
t.circle(50)

结果:在这里插入图片描述

  • 虽然,我们绘制出了同心圆,但暴露了一个问题:当绘制第二个圆时,笔头划过路过的区域,并没有抬笔,此时,我们需要通过抬笔和落笔来解决。

2. 抬笔与落笔

每次当笔头要位移绘制时,我们需要将笔头抬起,然后再绘制处再落笔即可

方法名说明简写
.penup()设置画笔抬起,此时无法绘制内容.up()
.pendown()设置画笔落下,此时可以绘制内容.down()
import turtle as t
t.goto(0,0)
t.circle(100)
t.penup() #抬笔 
t.goto(0,50)
t.pendown() #落笔
t.circle(50)

结果:在这里插入图片描述



画图案例练习:

  • 案例演练1:

如图:在这里插入图片描述

分析:圆的半径:200/2 = 100

import turtle as t
t.circle(100)
t.penup()
t.goto(200,0)
t.pendown()
t.circle(100)

案例演练2:美国盾牌

如图:

在这里插入图片描述

分析:由外到里,逐个画出(6步)

  1. 先画最外层的红圈
  2. 白色圆圈
  3. 里面的红圈
  4. 蓝色圈
  5. 五角星
  6. 白色五边形
import turtle as t
t.speed(8)

#最外层的红圈
t.penup()
t.goto(0,-200)
t.pendown()
t.color('red') #设置边框颜色和填充色
t.begin_fill() #开始填充
t.circle(200)
t.end_fill()

#白色圈
t.penup()
t.goto(0,-150)
t.pendown()
t.color('white')
t.begin_fill() #开始填充
t.circle(150)
t.end_fill()

#里面的红圈
t.penup()
t.goto(0,-100)
t.pendown()
t.color('red')
t.begin_fill() #开始填充
t.circle(100)
t.end_fill()

#蓝色圈
t.penup()
t.goto(0,-50)
t.pendown()
t.color('blue')
t.begin_fill() #开始填充
t.circle(50)
t.end_fill()

#五角星
t.penup()
t.goto(-40,10)
t.pendown()
t.color('white')
t.begin_fill() #开始填充
for i in range(5):
    t.forward(80)
    t.right(144)   
t.end_fill()

#白色五边形
t.penup()
t.goto(0,-20)
t.pendown()
t.color('white')
t.begin_fill() #开始填充
t.circle(16,steps=5)
t.end_fill()

12. 画点

方法名说明
.dot(r,c)绘制一个指定直径和颜色的圆点
上面参数参数说明
r直径
c(可省略)颜色

举例:

import turtle as t
t.dot(400,'green')
t.hideturtle() #隐藏箭头

结果:在这里插入图片描述


1. 美国盾牌

分析:用dot实现

import turtle as t
t.dot(400,'red')
t.dot(300,'white')
t.dot(200,'red')
t.dot(100,'blue')

#五角星
t.penup()
t.goto(-40,10)
t.pendown()
t.color('white')
t.begin_fill() #开始填充
for i in range(5):
    t.forward(80)
    t.right(144)   
t.end_fill()

#白色五边形
t.penup()
t.goto(0,-20)
t.pendown()
t.color('white')
t.begin_fill() #开始填充
t.circle(16,steps=5)
t.end_fill()

结果:在这里插入图片描述

2. 画人脸在这里插入图片描述

import turtle as t

#圆脸
t.penup()
t.goto(0,-200)
t.pendown()
t.circle(200)

#左眼
t.penup()
t.goto(-100,50)
t.pendown()
t.dot(40,'blue')

#右眼
t.penup()
t.goto(100,50)
t.pendown()
t.dot(40,'blue')

#鼻子
t.penup()
t.goto(0,50)
t.pendown()
t.circle(-50,steps=3)

#画嘴
t.penup()
t.goto(-150,-70)
t.pendown()
t.goto(0,-170)
t.goto(150,-70)
  • 17
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值