今天首先对昨天学的进行了复习,由这个复习可以看出昨天的我是多么的水*-*,今天的话倒是学的挺充实的,因为没有像上节课的jupyter notebook那样的东西(这节课看下来还是挺牛的,但也没到非用不可的时候,继续放着吧)。今天主要学习了三大部分,与用户的交互,格式化占位符,基本运算符。与用户交互中,切记input()输入的内容默认是字符串,需要什么数据类型需要重新说明。格式化占位符中,主要是f-string最好用,很强,f后面字符串的大括号{}中可以进行许多操作(运算)。然后就是基本运算符了,都是一些很基础得东西,不再赘述。
继续加油!
- 昨日复习
- 1.执行python程序的两种方式
- 1.1交互式
- 1.2命令行式
- 2.变量
- 3.命名规则
- 4.两种定义方式
- 5.常量
- 6.注释
- 6.1单行注释
- 6.2多行注释
- 7.内存管理
- 7.1引用计数
- 7.2垃圾回收机制
- 7.3小整数池
- 8.数据类型
- 8.1数字类型
- 8.2字符串类型
- 8.3列表类型
- 8.4字典类型
- 8.5布尔类型
- 1.执行python程序的两种方式
- 1.与用户交互
- 2.格式化输出
- 2.1占位符格式化
- 2.2 format格式化
- 2.3 f-string格式化
- 3.基本运算符
- 3.1算术运算符
- 3.2比较运算符
- 3.3赋值运算符
- 3.4逻辑运算符
- 3.5 身份运算符
- 3.6 python运算符优先级(了解)
- 3.7链式赋值
- 3.8交叉赋值
- 3.9解压缩
昨日复习
1.执行python程序的两种方式
1.1交互式
优点:写一行翻译一行 缺点 :不能永久保存
1.2命令行式
优点:能永久保存 缺点:无法及时得到报错信息
2.变量
什么是变量? 描述世间万物变化的状态
变量的组成 :变量名 = 变量值,变量名用于接收变量值
print(变量名) = print(变量值)
3.命名规则
- 具有某种意义
- 只能以数字,字母,下划线组成,且投一个字符不能为数字(下划线)
- 不能以关键字命名
4.两种定义方式
- 下划线
- 驼峰体
5.常量
固定不变的量,但是他是程序员约定俗成的规定,是为它实际上可以改变
6.注释
6.1单行注释
、# 后加注释内容
6.2多行注释
'''
sadaddsad
sdas
'''
7.内存管理
7.1引用计数
x = 257 # 引用次数为1
y = x # 引用次数为2
z = 257 # 1次
del y #x_257 1次
del z #x_257 1 ,z_257 0 触发垃圾回收机制
7.2垃圾回收机制
当一个变量值的引用计数为0的时候,python会自动回收该变量值的内存占用
7.3小整数池
[-5,256]
8.数据类型
8.1数字类型
整形 定义方式 height = 180 方法 +-*/
浮点型 定义方式 height = 180.5 方法 +-*/ %
8.2字符串类型
定义方式 name = ’nick‘ ,name = "nick" name = '''nick'''
方法 + \ *
8.3列表类型
定义方式 sun_hobby_list = ['chi','he','piao']
方法 索引取值
8.4字典类型
定义方式 sun_info = ['name':'sunch','hobby_list':['chi','he','piao']]
取值方式
8.5布尔类型
所有数据类型都自带布尔值,除了 False True None 空 0都是True
——————————————————————————————————————————————
1.与用户交互
- input()输入 无论你里面输入什么,input接受的都是字符串
- raw_input()是python2的语法,python3中会报错
- python2中input与用户交互时必须要指定数据类型
2.格式化输出
- 字符串可以拼接 用+号
- 输出的时候可以用逗号个开不同的字符串,一个逗号输出时等于一个空格
2.1占位符格式化
- % 可以占个位置给后面用,%s是字符串占位符,%d是数值占位符,如
name = "王卜语"
age = 21
height = 185
print("my name is",name,"my age is",age,"my height is",height)
# 第四行等价于
print("my name is %s, my age is %d, my height is %d"%(name,age,height))
2.2 format格式化
name = "王卜语"
age = 21
height = 185
print("my name is {}, my age is {}, my height is {}".format(name,age,height))
- 后面format中的内容可以看做一个列表,若中括号中不输入数字,则默认从第一个开始,如果输入数字n,则代表这个位置取后面俩表中的第n+1(因为列表中索引从0开始)个值
2.3 f-string格式化
name = "王卜语"
age = 21
height = 185
print(f"my name is {name}, my age is {18}, my height is {height*10}")
- 从f后面中的{}即为占位符,{}中可直接输入变量名,也可以进行运算,{}里面是很自由的,大部分都可填
- 注意:.2f是保留两位小数(后面的用法)
- f 换成大写 F 也行
3.基本运算符
3.1算术运算符
- 1+1
- 1-1
- 1*1
- 1/1
- 1%1
- 1//1
3.2比较运算符
- > >=
- < <=
- == !=
3.3赋值运算符
- a = 10
3.4逻辑运算符
- and 和 对+对 = 对, 对+错 = 错
- or 或 对+错 = 对, 错+错 = 错
- not 非 not 对 = 错, not 错 = 对
3.5 身份运算符
- is 比较的是 id
x = 257
y = 257
print(x is y)
print(x == y)
- x is y 比的是地址
- x == y 比的是大小
3.6 python运算符优先级(了解)
3.7链式赋值
- x = 10 y = 10 z = 10,等价于 x,y,z = 10,10,10 等价于 x = y = z = 10
3.8交叉赋值
- x = 10 y = 20 想让 x与y的值交换(好像跟c中初学的比大小换值差不多
- 引入z , z = x(10) x = y(20) y = z(10) ➡ x = 20 , y = 10 等价于 x,y = y,x
3.9解压缩
hobby_list = ["eat","drink","piao","play","handsome","eat","drink","piao"]
# print(hobby_list[1])
# print(hobby_list[4]) 如果我还是想输出第二个和第五个
_,hobby1,_,_,hobby2,*_ = hobby_list
print(hobby1)
print(hobby2)
- 解压缩就是把列表中的值都赋给一个变量,不用一次一次去访问列表
- 如果有很多的变量我们我只需要其中几个,其他位置的就需要用别的字符代替,一般用下划线_,
- 这时还会有一个问题,如果连着很多下划线,那么效率还是很低,此时可以用*_来代替若干个下划线_
- 那么*_代表多少个呢,这就不得不再次感叹python的强大了,你差几个它可以当几个