Python基础知识 D2

1.链式赋值:同一个对象赋值给多个变量:x=y=123

系列解包赋值:系列数据赋值给对应相同个数的变量(个数必须一致):a,b,c=4,5,6

常量:Python不支持常量,只能约定命名规则,以及在程序逻辑上不对常量的值做修改:MAX_SPEED=3.

2.最基本的内置数据类型

1)整型(整数)

2)浮点型(小数)

3)布尔型:真假

4)字符串型:字符组成的序列

5)运算符:+、-、*、/(8/2=4.0,浮点数除法)、//(7//2=3,整数除法)、%(7%4=3,模,取余数)、**(2**3=8,幂)

注意:0不能作为除数;divmod()函数同时得到商和余数,divmod(13,3)=(4,1),返回元祖

2.1 整数

*不同进制:10进制,二进制(0b或0B),八进制(0o/0O),16进制(0x/0X)

*int()实现类型转化:直接舍去小数(int(3.99)=3);布尔值int(True)=1,int(False)=0;字符串int(“456”)=456,int("456acv")报错

*自动转型:整数和浮点数混合运算,结果自动转型成浮点数。2+8.0=10.0

*整数多大:python3取消long,int可以存储任意大小的整数。

2.2 浮点数(float,小数)

浮点数用axb^10形式的科学计数法表示,比如3.14 表示成314e-2或者314E-2。这些数字在内存中按照科学计数法存储。

*float():类型转换和四舍五入。float(3)=3.0,生产新的对象,类型是float。float("3.14")=3.14。

*整数和浮点数混合运算,结果是浮点数。

*round(value) 可以返回四舍五入的值,不改变原有值,生成新的值。round(3.14)=3

*增强型赋值运算符:+、-、*、/、//、**和=结合,构成增强型赋值运算符。a=a+1,等价a+=1

注:+=中间不能加空格。**=,a**=2等价a=a**2;//=,a//=2,等价a=a//2等。

2.3 时间的表示

计算机中时间的表示是从“1970年1月1日 00:00:00”开始,以毫秒(1/1000秒)进行计算,也把1970年的这个时刻叫“unix时间点"。时间可以全部用数字表示。

python中可以用time.time()获得当前的时刻,返回的值是以秒为单位,带微秒(1/1000毫秒)精度的浮点事,例如:1.1114

2.4 多点坐标,绘制折线图

import turtle
import math
#定义多个点的坐标
x1,y1=100,100
x2,y2=100,-100
x3,y3=-100,-100
x4,y4=-100,100

#绘制折线
turtle.penup()
turtle.goto(x1,y1)
turtle.pendown()
turtle.goto(x2,y2)
turtle.goto(x3,y3)
turtle.goto(x4,y4)


distance=math.sqrt((x1-x4)**2+(y1-y4)**2)
turtle.write(distance)

2.5 布尔值

python2中没有布尔值,1表示TRUE,0表示False。

Python3中,把True和False定义成关键字,本质还是0和1,可以和数字相加。

2.5.1 比较运算符

所有比较运算符返回1表示真,返回0表示假。分别和True和False等价。

==,!=,>,<,>=,<=。

2.5.2 逻辑运算符

or或,x or y:x为true返回true,x为false,返回y;

and与,xandy:x为true返回y,x为false,返回false;

not,not x:x 为true返回false,x为false,返回true。

2.5.3 同一运算符

is:判断地址/id,两个标识符是不是或引用同一个对象(id地址/type/value)。

is not:判断两个标识符是不是引用不同对象。

注意: is 与==区别:

is比较地址是不是同一个;==比较对象的value值是不是相等,默认调用对象的_equal_()方法。

2.5.4 整数缓存

python仅对较小的整数进行缓存【-5,256】,并且这仅仅是在命令中执行。而在Pycharm或者保存为文件后执行也会缓存,结果不一样,这是因为解释器做了优化,缓存范围是【-5,任意整数】。

is运算比==效率高,在变量和None进行比较时,应该使用is。

2.6 字符串

本质:字符序列。python中字符串是不可变的。不支持单字符类型,单字符也是字符串。

2.6.1 字符串编码

python3使用Unicode,可表示世界上所有书面语言的字符。Python3的字符默认就是16位Unicode编码(2^16个字符),ASCII码(英文够,汉字不够)是Unicode编码的子集。

内置函数ord()可以把字符转换成对应的Unicode码;内置函数chr()可以把十进制数字转换成对应的字符。

2.6.2 引号创建字符串

可以通过单引号或双引号创建字符串。

连续三个单引号或三个双引号,可以创建多行字符串。

2.6.3 空字符串和len()函数

python允许空字符串的存在,不包含任何字符串且长度为0’。

2.6.4 转义字符

用“\+特殊字符”,实现某些难以用字符表示的效果。

\(在行尾):续行符;\\: 反斜杠符号;\':单引号;\":双引号;\b 退格;\n 换行;\t 横向制表符;\r回车

2.6.5 字符串拼接

*+:两边字符串,拼接;两边数字,加法:两边不同类型,抛出异常。

*将多个字符串直接放到一起拼接,中间是空格。‘aa’ ‘bb’  ==》‘aabb’

2.6.6 字符串复制

a='five'*3  ==》'fivefivefive'

2.6.7 不换行打印

print会自动打印一个换行符。end= “任意字符串”,实现末尾添加任何内容。

2.6.8 从控制台读取字符串

可以使用input()从控制台读取字符串。

2.6.9 str()实现数字转型字符串:print自动调用str()

使用[]提取字符:字符串的本质就是字符序列,可以通过在字符串后面添加[],在[]里面指定偏移量,可以提取该位置的单个字符。正想搜索=》最左侧第一个字符偏移量(索引)是0,直到len(str)-1为止。反向搜索=》最右侧第一个字符偏移量是-1,倒数第二个偏移量是-2,直到-len(str)为止。

replace():实现字符串的替换。a.replace('c',‘人’),返回新字符串。

2.6.10 字符串切片slice

截取字符串【起始偏移量start:终止偏移量end:步长step】(包头不包尾)

2.6.11 split()分割 join()合并

split():分隔成多个字符串,存储到列表中。

join():将一系列的字符串连接起来。通常和列表结合使用。"*".join(a)。

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

python支持字符串驻留机制,对复合标识符规则的字符串(仅包含下划线_ 字母和数字)会使用这个机制。

2.6.13 字符串常用方法

*常用的查找方法:len()  a.startswith() a.endswith() a.find(); a.rfind()(找最后一个出现的字符串位置);a.count() a.isalnum()(是否全部字母或者数字)

*去除首位信息:strip(),什么都不加:去除首尾空格;lstrip() rstrip()

*大小写转化  a.capitalize() 首字符大写等

*格式排版:center() ljust() rjust()

*其他方法

2.6.14 字符串的格式化

*str.format():可以接受不限个参数,位置可以不按顺序。可以通过{索引}{参数名}映射参数值,实现对字符串的格式化。

基本语法:通过{}和:代替以前的%

*填充和对齐^ < > 居中 左对齐 右对齐

*数字格式化:浮点数(小数)f,整数d 等

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值