python基础知识学习Day2

    技术2022-07-10  158

    文章目录

    链式赋值变量互换系列解包赋值 python中最基本的内置数据类型运算整数(int)使用int()实现类型转换 浮点数(float)布尔型字符串replace函数字符串切片split()分割和join()合并字符串驻留机制和字符串比较成员操作符去除首尾信息大小写转换格式排版字符串格式化填充与对齐 【操作】 定义多点坐标_绘出折线_并计算器试点和终点距离

    链式赋值

    链式赋值用于同一个对象赋值给多个变量。 x=y=123 相当于 x=123;y=123

    变量互换

    系列解包赋值

    系列数据赋值给对应相同个数的变量(个数必须保持一致) 常量 Python不支持常量,即没有语法规则限制改变一个常量的值。我们只能约定常量的命名规则,以及在程序的逻辑上不对常量作出修改。

    python中最基本的内置数据类型

    1.整型 整数 2.浮点型 小数 3.布尔型 4.字符串型

    运算

    (只列出特殊的,剩余和其他语言同) 浮点数除法 eg:8/2 4.0 整数除法 eg: 7//2 3 模(取余) eg:7%4 3 幂 eg: 2**3 8 divmod()同时获得商和余数

    整数(int)

    二进制 0b或0B 0 1 八进制 0o或0O 0 1 2 3 4 5 6 7 十六进制 0x或0X 0 1 2 3 4 5 6 7 8 9 a b c d e f 用于“位运算”操作

    使用int()实现类型转换

    1.浮点数直接舍去小数部分。 2.布尔值True转为1,False转为0。 3.字符串符合整数格式(浮点数格式不行)则直接转成对应整数,否则报错。 自动转型 整数和浮点数混合运算,表达结果自动转型为浮点数。 Python3可以做超大数的运算!

    浮点数(float)

    3.14表示成314E-2或者314e-2 类型转换和四舍五入 1.类似于int(),我们也可以使用float()将其他类型转化成浮点数。 2.整数和浮点数混合运算时,表达式结果自动转型成浮点数。 3.round(value)可以返回四舍五入的值 注:但不会改变原有值,而是产生新的值。 “+=”之间不能加空格,其他同

    布尔型

    True 1 False 0 比较运算符 逻辑运算符 同一运算符 is与==区别: is: 比较地址(是不是同一个对象) ==:比较值 is运算符比==效率高,在变量和None进行比较时,应该用is。 整数缓存问题 交互模式:[-5,256] 文件:[-5,任意正整数]

    #文件形式同一运算 a=100000 b=100000 print(a==b) print(a is b) m=-6 n=-6 print(m==n) print(m is n)

    字符串

    本质:字符序列 特点:不可变 "a"也是字符串,长度为1的字符串 单引号或双引号创建字符串 连续三个单引号或者连续三个双引号,可以帮助我们创建多行字符串。 字符串的编码 16位的Unicode编码,可以表示世界上任何书面语言的字符。 ord():把字符转换成对应的Unicode码; chr():把十进制数字转换成对应的字符。 空字符串和len()函数 转义字符 字符串拼接:

    用+ 直接放到一起实现拼接

    字符串复制

    不换行打印:print函数自动打印一个换行符。不想换行,通过参数end=“任意字符串”。

    print("aa",end="*") print("bb",end="*") print("cc")

    从控制台读取字符串 str()实现数字、布尔值等转型字符串 使用[]提取字符: python从0开始 正向搜索:最左侧第一个字符,偏移量是0,第二个偏移量是1,以此类推。直到len(str)-1为止。 反向搜索:最右侧第一个字符,偏移量是-1,倒数第二个偏移量是-2,以此类推,直到-len(str)为止。

    replace函数

    创建了新的字符串对象,并指向了变量a,而不是修改了以前的字符串。

    字符串切片

    [起始偏移量start : 终止偏移量end : 步长 step] 包头不包尾 [ , )

    split()分割和join()合并

    split()可以基于指定分隔符将字符串分隔成多个子字符串(存储到列表中)。如果不指定分隔符,则默认使用空白字符(换行符/空格/制表符)。

    join()将一系列子序列字符串连接起来。

    【操作】测试+拼接符和join(),不同的效率

    import time time01=time.time()#起始时刻 a="" for i in range(1000000): a+="sxt" time02=time.time()#终止时刻 print("运算时间:"+str(time02-time01)) time03=time.time()#起始时刻 li=[] for i in range(1000000): li.append("sxt") a="".join(li) time04=time.time()#终止时刻 print("运算时间:"+str(time04-time03))

    join()效率更高!

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

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

    成员操作符

    in not in

    去除首尾信息

    >>>'*as*d**'.strip('*')#去除首尾 'as*d' >>> '*as*d**'.lstrip('*')#去除左侧 'as*d**' >>> '*as*d**'.rstrip('*')#去除右侧 '*as*d' >>> " ab c ".strip() 'ab c'

    大小写转换

    格式排版

    cencer()居中 ljust()左对齐 rjust()右对齐

    字符串格式化

    str.format() 通过{}和:来替代以前的%。 format函数可以接受不限个参数,位置可以不按顺序。

    >>> a='名字是:{0},年龄是:{1}' >>> a.format('ZMD',22) '名字是:ZMD,年龄是:22' >>> b='名字是:{0},年龄是{1},{0}是大好人' >>> b.format("ZMD",22) '名字是:ZMD,年龄是22,ZMD是大好人' >>> c="名字是{name},年龄是{age}" >>> c.format(age=22,name='ZMD') '名字是ZMD,年龄是22'

    填充与对齐

    填充与对齐一起使用 ^ 、< 、>分别是居中、左对齐、右对齐,后面带宽度。 :号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充。 数字格式化

    【操作】 定义多点坐标_绘出折线_并计算器试点和终点距离

    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)

    Processed: 0.010, SQL: 9