立习习学python——第二天

赋值

1.链式赋值

x=y=123

注意:变量x、y的地址是相同的。运行结果如下:

Python 3.7.3 Shell 运行

2. 系列解包赋值

a,b,c=1,2,3

应用:实现变量互换

c,d=4,6
c,d=d,c

而在C语言中,需要另外一个变量进行倒腾。

常量

Python不支持常量,我们只能约定常量的命名规则,以及在程序的逻辑上不对常量的值做出修改。

最基本内置数据类型

  1. 整型
    也就是整数
  2. 浮点型
    小数,3.14或314e-2/314E-2
  3. 布尔型
    表示真假,仅包含:True、False
  4. 字符串型
    由字符组成序列

整 型 和 浮 点 型 其 实 就 是 数 字 , 那 么 接 下 来 , 我 们 将 上 述 四 个 类 型 划 分 为 大 类 进 行 介 绍 , 分 别 为 : 数 字 、 布 尔 型 、 字 符 串 \color{DarkTurquoise}{整型和浮点型其实就是数字,那么接下来,我们将上述四个类型划分为大类进行介绍,分别为:数字、布尔型、字符串}

数字

  1. 运算
运算符说明
+加法
-减法
*乘法
/浮点数除法
//整数除法
%模(取余)
**

下面用一个简单的例子来演示操作:
在这里插入图片描述
:0不可以做除数

  1. 整数
    一共有四种进制,分别为:二进制(0b/0B)八进制(0o/0O)十进制十六进制(0x/0X)
    :整数和浮点数混合运算时,表达式结果自动转型成浮点数。
  2. 整数缓存问题
    Python仅仅对比较小的整数对象进行缓存(范围为[-5,256]),而并非所有整数对象;而在Pytharm中,范围为[-5,任意整数]。举个例子,对于下述代码:在Python中,两者的地址不一样;而在Pytharm中,两者的地址是一样的。(通过id()可以验证)
a=257
b=257
  1. 类型转换与四舍五入
函数含义备注
float()其他类型转换成浮点数
round()四舍五入不会改变原有值,而是产生了新值
int()保留整数部分
  1. 增强型赋值运算符
运算符例子等价
+=a+=2a=a+2
-=a-=2a=a-2
*=a*=2a=a*2
/=a/=2a=a/2
//=a//=2a=a//2
**=a**=2a=a**2
%=a%=2a=a%2
  1. 时间表示
函数含义备注
time.time()获得当前时刻从1970年1月1日00:00:00开始计时,单位为秒

下面以获取当前时间为例,进行操作说明:

import time
time.time()

布尔值

  1. 比较运算符的使用
运算符描述
==等于-比较对象的值是否相等
!=不等于-比较对象的值是否不相等
>大于-比较左边的值是否大于右边的值
<小于-比较左边的值是否小于右边的值
>=大于等于-比较左边的值是否大于等于右边的值
<=小于等于-比较左边的值是否小于等于右边的值
  1. 逻辑运算符的使用
运算符格式说明
orx or yx为true,则返回true;x为false,则返回y
andx and yx为true,则返回y;x为false,则返回false
notnot xx为true,则返回false;x为false,则返回true
  1. 同一运算符
运算符描述
is判断两个标识符是不是引用同一个对象
is not判断两个标识符是不是引用不同对象

:同一运算符是判断是否两个变量的地址;而比较运算符是判断两个变量的值。

字符串

  1. 编码
函数含义
ord()把字符转换成对应的Unicode码
chr()把十进制字符转换成对应的字符
  1. 创建
  • 通过单引号或双引号创建字符串。(灵活运用)
  • 连续三个单引号或三个双引号,可以创建多行字符串。
  1. 空字符串和len()函数
  • 允许空字符串的存在,不包含任何字符串且长度为0
  • len()用于计算字符串含有多少字符
  1. 转义字符
转义字符描述
\续行号
\反斜杠符号
单引号
‘’双引号
\b退格
\n换行
\t横向制表符
\r回车
  1. 拼接
  • 可以使用“+”将两个字符串拼接
  • 可以将多个字面字符串直接放到一起实现拼接
  1. 复制
    使用“*”可以实现字符串复制。
    下面代码就是把“xy”这个字符串重复了30次。
a="xy"*30
  1. 不换行打印
    如果进行两次以上调用print打印字符,默认会换行,如果不想换行,可以通过参数end=“任意字符串”实现。
print("wy",end="*")
print("xx",end="#")

结果如下:
在这里插入图片描述

  1. 从控制台读取字符串
    使用input()从控制台读取键盘输入的内容。
    举个栗子
>>> myname=input("请输入你的名字:")

在这里插入图片描述

  1. str()实现数字转型字符串
    其他数据类型转换为字符串
  2. 使用[ ]提取字符
    [ ]中是偏移量,包含两种搜索
  • 正向搜索:最左侧第一个字符,偏移量是0,最后一个字符(即最右边的字符)偏移量是len(str)-1;
  • 反向搜索:最右侧第一个字符,偏移量是-1,最后一个字符(即最左边的字符)偏移量是-len(str)。
  1. replace()实现字符串替换
    字符串是不可改变的。但是,确实有时候需要替换某些字符,只能通过创建新的字符串来实现。所谓的新就是说,新旧字符串的地址不一样。
  2. 切片slice操作
    标准格式为:[起始偏移量:终止偏移量:步长]
    包头不包尾
    典型操作如下表所示:
操作和说明示例结果
[:] 提取整个字符串“wangyx” [:]“wangyx”
[start:] 从start索引开始到结尾“wangyx” [1:]“angyx”
[:end] 从开头到end-1“wangyx” [:3]“wan”
[start:end] 从start到end-1“wangyx” [1:3]“an”
[start: end : step] 从start到end-1,步长为step“wangyx” [1:5:2]“ag”
  1. split()分割和join()合并
    split()可以基于指定分隔符将字符串分割成多个子字符串。如果不指定分隔符,则默认使用空白字符(换行符/空格/制表符)。示例代码如下:
myname="wangyx"
myname.split("a")

结果:
在这里插入图片描述
join()将子字符串连接起来。示例代码如下:

myname=['wyx','xjp']
'i'.join(myname)

结果:
在这里插入图片描述

  1. 字符串驻留机制
    字符串驻留:仅保存一份相同且不可变字符串的方法,不同的值被存放在字符串驻留池中。Python支持字符串驻留机制,对于符合标识符规则的字符串(仅包含下划线、字母和数字)会启用字符串驻留机制。用代码来解释:
    在这里插入图片描述
    也就是说,符合标识符规则的字符串,当再次调用时,直接调出,id不变。

  2. 字符串比较和同一性

符号含义
==,!=是否含有相同的字符
is,not is地址是否相同
in,not in某个字符(或者子字符串)是否在字符串中
  1. 字符串的格式化
  • format()基本用法
    直接上代码:
    在这里插入图片描述
    在这里插入图片描述
    注: 要是数字的话,顺序必须一致,但是要是像第二种情况,顺序随便。
  • 填充与对齐
    填充常跟对齐一起使用
    ^、<、>分别是居中、左对齐、右对齐,后面带宽度
    :后带填充的字符,只能是一种字符,不指定的话默认是用空格填充。
  • 数字格式化
方法说明
{:2f }保留小数点后两位
{:+.2f }带符号保留小数点后两位
{:0f }不带小数
{:0>2d }数字补零(填充左边,宽度为2)
{:x>4d }数字补x(填充右边,宽度为4)
{:, }以逗号分隔的数字格式
{:,.2% }百分比格式
{:,.2e}指数记法
{:,10d }右对齐(默认),宽度为10
{:<10d }左对齐,宽度为10
{:^10d }居中,宽度为10
  1. 字符串常用方法汇总
  • 常用查找方法
方法说明
len(a)字符串a的长多
a.statrwith(‘w’)判断字符串a是否以w开头
a.endswith(‘w’)判断字符串a是否以w结尾
a.find(‘w’)字符串中w第一次出现的位置
a.rfind(‘w’)字符串中w最后一次出现的位置
a.count(‘w’)字符串中w出现的次数
a.isalnum()字符串全是字母或数字
  • 去除收尾信息
方法说明
a.strip(“*”)去除字符串中首尾信息(比如“*”)
a.lstrip(“*”)去除字符串中左边信息(比如“*”)
a.rstrip(“*”)去除字符串中右边信息(比如“*”)
  • 大小写转换
方法说明
a.capitalize()产生新的字符串,首字母大写
a.title()产生新的字符串,每个单词的首字母大写
a.upper()产生新的字符串,所有字符全转成大写
a.lower()产生新的字符串,所有字符全转成小写
a.swapcaser()产生新的字符串,所有字符全转成大小写
  • 格式排版
方法说明
a.center(10,“*”)将a在10个字符中居中,剩余用“*”补充
a.ljust(10,“*”)将a在10个字符中居左,剩余用“*”补充
a.rjust(10,“*”)将a在10个字符中居右,剩余用“*”补充
  • 其他
方法说明
a.isalnum()是否全部为字母或数字
a.isalpha()是否全部为字母
a.isdigit()是否全部为数字
a.isspace()是否为空白符
a.isupper()是否全部为大写字母
a.islower()是否全部为小写字母
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值