1.python基本操作

1.1Python关键字

1
2
import  keyword
print(keyword.kwlist )

image-20220720155752182

1.2Python核心数据类型

  • 数字(整数,浮点数,复数,布尔型数)
  • 字符串
  • 列表
1
2
3
4
5
6
7
8
9
10
11
'''TempConvert.py
温度转换实例'''
TempStr = input("请输入带有符号的温度值:")
if TempStr[-1] in ['F','f']:
C=(eval(TempStr[0:-1]) - 32) / 1.8
print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in['C','c']:
F=1.8 * eval(TempStr[0:-1]) + 32
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")

image-20220720160000065

1.3is/is not运算符

作用:判断两个对象是否绑定同一个对象,如果是同一个对象返回True,如果不是,返回False

1、is,is not对比的是两个变量的内存地址

2、==,!=对比的是两个变量的值

image-20220720160233890

1.4小整数对象池

python中整数-5到256永远存在于小整数池中,不会释放,可重复使用

调用这个区间内的数字时,会从小整数对象池中直接绑定,而不会重新创建。

1.5id( )函数

格式:id(对象)

作用:返回对象的地址

image-20220720160509027

1.6del语句

作用:用于删除变量,同时删除与对象的关联关系,如果可能,则释放对象

格式: del 变量名

Python的内存管理和引用计数:每个对象都会记录有几个变量引用自身,当引用数量为0时,则对象销毁,此种自动化管理的方式叫引用计数。

  • 使用del语句,删除到变量到对象的引用和变量名称本身
  • 注意del语句作用在变量上,而不是数据对象上

image-20220720160728394

1.7内建的数值型函数

1
2
3
4
abs( )                  # 绝对值函数
round(number[,ndigits]) # 对数值进行四舍五入(如果ndigits为负数反向取小数点)
pow(x,y,z=None) # 相当于x^y或{x^ymod z }
help( ) # 函数可查看函数帮助文档 help(函数名)

1.8基本输入输出函数

基本输入函数input

  • 作用:从标准输入设置上读取一个字符串(末尾的换行符会被删除)
  • 格式:input('提示字符串')
  • 提示字符串可以为空

基本输出函数print

  • 作用:将一系列的值以字符串的形式输出到标准输出设备上,默认为终端
  • 格式:print(value,...,sep=’ ’,end=’\n’)
  • sep表示两个值之间的分隔符,默认为一个空格
  • end输出完毕后再流末尾自动追加一个字符,默认为换行符\n
1
2
3
4
5
6
7
8
9
10
11
'''TempConvert.py
温度转换实例'''
TempStr = input("请输入带有符号的温度值:")
if TempStr[-1] in ['F','f']:
C=(eval(TempStr[0:-1]) - 32) / 1.8
print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in['C','c']:
F=1.8 * eval(TempStr[0:-1]) + 32
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")

2.format格式化

2.1槽机制

1
2
3
print('{} {}'.format('hello', 'world'))  # 最基本的
print('{0} {1}'.format('hello', 'world')) # 通过位置参数
print('{0} {1} {0}'.format('hello', 'world')) # 单个参数多次输出

image-20220720161552068

2.2关键词定位

1
2
3
4
# 通过关键词参数
print('我的名字是{name},我今年{age}岁了。'.format(name = '小明', age = '12'))
# 与位置参数一样,单个参数也能多次输出
print('{name}说:"我的名字是{name},我今年{age}岁了。"'.format(name = '小明', age='12'))

image-20220720161624746

2.3可变参数

1
2
3
4
5
6
7
8
9
10
# 传入list
data = ['hello', 'world']
print('{0} {1}'.format(*data))
# 传入dict
data = {'name': '小明', 'age': 12}
print('我的名字是{name},我今年{age}岁了。'.format(**data))
# 混用
data_1 = ['hello', 'world']
data_2 = {'name': '小明', 'age': 12}
print('{0} {1} 我的名字是{name},我今年{age}岁了,{0}!'.format(*data_1, **data_2))

image-20220720161659164

2.4【案例】打印文本进度条

1
2
3
4
5
6
7
8
import time
length = 1000
for i in range(1, length + 1):
percent = i / length
bar = '▉' * int(i // (length / 50))
time.sleep(0.01)
print('\r进度条:|{:<50}|{:>7.1%}'.format(bar, percent), end='')
print('\n')

image-20220720161726768

2.5其他格式化方式

1585620230582

1585620239918

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
height, weight=(eval(input("请输入身高(米)和体重(公斤)")))
bmi=weight/pow(height,2)
print("BMI的数值为:{:.2f}".format(bmi))
who,nat="",""
if bmi<18.5:
who,nat="偏瘦","偏瘦"
elif 18.5<=bmi<24:
who,nat="正常","正常"
elif 24<=bmi<25:
who,nat="正常","偏胖"
elif 25<=bmi<28:
who,nat="偏胖","偏胖"
elif 28<=bmi<30:
who,nat="偏胖","肥胖"
else:
who, nat = "肥胖", "肥胖"
print("BMI指标为:国际'{0}',国内'{1}'".format(who,nat))

3.turtle绘图

1.库library 包package 模块module库引用:import from…import import…as

2.最小单位是像素,电脑左上角坐标为(0.0)

3.1turtle函数

  • turtle.setup(width,height,startx,starty)
  • turtle.goto(x,y)可以直接到达某一坐标
  • turtle.fd 向前走
  • turtle.seth(angle)调整角度
  • turtle.penup()表示画笔抬起
  • turtle.pensize()=turtle.width表示画笔宽度
  • turtle.pencolor()表示画笔颜色:颜色字符串,RGB小数值,RGB元组
  • turtle.forward(d)d表示行进距离
  • turtle.circle(r,extent=None)根据半径r绘制extent角度的弧形,默认圆心在海龟的左侧
  • turtle.seth()方向控制函数:绝对坐标系的转向
  • turtle.left(angle)海龟向左转turtle.right(angle)海龟向右转:海龟角度

3.2【案例】python绘制python蟒蛇

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import turtle#引入turtle库
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
turtle.seth(-40)
for i in range(4):
turtle.circle(40,80)
turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()

image-20220720162009133

4.bool运算

4.1bool( )返回为假的情况

  • x为0,0.0,0+0j,False,None,''
  • []空列表
  • {}空字典
  • set()空集合
  • ()空元组

4.2条件表达式

语法:表达式1 if 真值表达式 else 表达式2

作用:如果真值表达式的布尔环境值为True,则执行表达式1并返回结果的引用,否则执行表达式2并返回结果的引用

image-20220720162324973

4.3pass语句

  • 作用:通常用来填充语法空白
  • pass语句又名空语句

4.4isinstance()函数判断

isinstance(object, classinfo)

  • object— 实例对象。
  • classinfo— 可以是直接或间接类名、基本类型或者由它们组成的元组。

返回值

如果对象的类型与参数二的类型(classinfo)相同则返回 True,否则返回 False

1
2
3
4
5
6
7
8
class A:
pass
class B(A):
pass
print(isinstance(A(), A)) # returns True
print(type(A()) == A) # returns True
print(isinstance(B(), A)) # returns True
print(type(B()) == A) # returns False

image-20220720162614817