day2笔记

链式赋值

  1. 同一个对象,赋值给多个变量,对象的地址都是一样的
    #系列解包赋值(个数必须一致)
    a,b,c=4,5,6
    相当于a=4,b=5,c=6

使用系列解包赋值实现变量变换

a,b=1,2
a,b=b,a,实现了a和b的互换(和c语言不一样)

常量

python不支持常量

最基本的内置数据类型介绍

  1. 整型:整数
  2. 浮点型:小数
  3. 布尔型:表示真假,只有true和false

运算

/:浮点数除法(小数)
//:整数除法:取整数
%:模:取余
:幂运算。23=8
divmod()函数:同时得到商和余数。divmod(13,3),输出(4,1),返回的是一个元组

使用int()实现类型转换

  1. 浮点数直接舍去小数部分。如:int(9.9)结果是:9。
  2. 布尔值True 转为1,False 转为0。如:int(True)结果是1。

自动转型

整数和浮点数混合运算时,表达式结果自动转型成浮点数。
注意:Google=10**100.

浮点数(float)

浮点数,称为float。
浮点数用
a*b的10 次方形式的科学计数法表示。比如:3.14,表示成:314E-2 或者314e-2。
这些数字在内存中也是按照科学计数法存储。

类型转换和四舍五入

使用float()将其他类型转化成浮点数。
round(value)可以返回四舍五入的值,不会改变原有值,而是产生新的值。

增强型赋值运算符

+=,-=,等,中间不能加空格

时间的表示

unix时间点:1970年1月1日00:00:00开始计时,以毫秒进行计算。
python中可以通过time.time(),获取当前时刻,带微秒精度的浮点数。

布尔值

python3中,把True 和False 定义成了关键字,但他们的本质还是1 和0,甚至可以和数字相加。

比较运算符

逻辑运算符(重要)

or:x or y,x为true,不计算y直接返回true,x为false,返回y。
and:x and y,x为true,返回y的值;x为false,则不计算y,直接返回false
not:not x,x为true,返回false;x为false,返回true。

同一运算符

is,is not

一个对象有什么:id,type,value。同一运算符用于比较两个对象的存储单元,之际上比较的是地址,是不是同一个
【注意】is用于判断两个变量引用的对象,是否是同一个,即比较对象的地址。==用于判断引用变量引用的值是否相等。
重点
在这里插入图片描述
a和b的值是相等的,但是a is b返回false,因为这两个对象色的地址是不同的,值相同。

整数缓存问题

Python 仅仅对比较小的整数对象进行缓存(范围为[-5, 256])缓存起来,而并非是所有整数对象。
在这里插入图片描述
需要注意的是,这仅仅是在命令行中执行,而在Pycharm 或者保存为文件执行,结果是不一样的,这是因为解释器做了一部分优化(范围是[-5,任意正整数]),这个时候,上边false就会变成true。

字符串

基本特点

本质:字符序列。Python 不支持单字符类型,单字符也是作为一个字符串使用的。

字符串的编码

Python3 直接支持Unicode,可以表示世界上任何书面语言的字符。Python3 的字符
默认就是16 位(2的16次方)Unicode 编码,ASCII 码是Unicode 编码的子集。
内置函数:
ord(‘A‘):65。字符转为编码
chr(66):’B‘。编码转为字符。

引号创建字符串

  1. 通过单引号和双引号创建字符串,使用没有区别。唯一注意:如果这一个字符串里面有单引号,外面就要用双引号括起来;里面是双引号,外面就用单引号括起来。
  2. 连续三个单引号或三个双引号,可以创建多行字符串。

空字符串

ython 允许空字符串的存在,不包含任何字符且长度为0。空格也算是一个字符。

转义字符

字符串拼接

用+拼接

字符串复制

a=‘sxt’*3

不换行打印

print(’xer’,end=’。’)

从控制台读取字符

myname=input(‘输入’)

str()实现数字转型字符串

str()

使用[ ]提起字符串

a[i]
正向搜索:从0开始,左到右
反向搜索:从-1开始,右到左

replace ()实现字符串变化

a=a.replace(‘被替换的字符’,‘替换的字符’)

【注意】python中字符是不可以替代的,这里的操作是生成了新的对象,再把新对象的id赋值给a

字符串切片slice操作

也就是截取字符串
[起始偏移量start:终止偏移量end:步长step]
注意:包头不包尾,一般不包含最后一个字符。

split()分割和join()合并

  1. split()可以基于指定分隔符将字符串分隔成多个子字符串(存储到列表中)。如果不指定分隔符,则默认使用空白字符(换行符/空格/制表符)。
    不指定:a.split()
    指定:a.split(‘to’):以to为分隔符,进行分割
  2. join一般和列表一起使用
  3. a=[‘ac’,‘vv’,‘cd’]
    ”连接符”.join(a),如果”连接符“里面为空,就直接拼起来。
import time
time01=time.time()#起始时刻
a=""
for i in range(1000):
    a += "sxt"
print(a)
time02=time.time()#终止时刻
print("运算时间:"+str(time02-time01))

time03=time.time()
li=[]#列表是可变的,直接在后面加上要拼接的字符就可以了,但是+=是生成新的对象,每次都生成一次
for i in range(100000):#注意:不要忘记for循环要以冒号结束
	li.append("sxt")
a="".join(a)
time04=time.time()
print("运算时间:"+str(time04-time03))

字符串驻留机制和字符串比较

**字符串驻留:**仅保存一份相同且不可变字符串的方法,不同的值被存放在字符串驻留池中。Python 支持字符串驻留机制,对于符合标识符规则的字符串(仅包含下划线(_)、字母和数字,三种都必须包含)会启用字符串驻留机制驻留机制。

成员操作符

in /not in 关键字,判断某个字符(子字符串)是否存在于字符串中。
in/not in
a=“abcdefg”
“b” in a
返回true

字符串常用方法汇总

注意:空白符常用的有制表符,换行符,空格

字符串的格式化

format函数

使用{ }作为占位符。
【注意】占位符里面的变量定义,要按照变量名的规则定义,不能随便定义数字。
在这里插入图片描述

a="名字是:{0},年龄是:{1}"
a.format("学生",18)
out:'名字是:学生,年龄是:18'

填充和对齐

"我是{name},喜欢{num:#<8}".format(name="高",num=99)
#out:'我是高,喜欢99######'

【注意】要严格按照格式赋值。

数字格式化

a="我是{name},我有存款{num:*^8.2f}"
c=a.format(name="小明",num=100.233)
#out:'我是小明,我有存款*100.23*'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值