Python基本数据类型及使用
Python基本数据类型及使用
# 基本数据类型分类
- int 整数
- float 小数
- bool 布尔值
- str 字符串
## int 整数
- 包括正整数和负整数
- 与java、c等语言相比并没有位数限制,理论上可以是任意大## float 小数
##float 小数
- 带有小数点的数,同样没有位数限制
- 可以使用科学计数法表示,如1.23e2,相当于123.0,0.2e-2,相当于0.002。任何使用科学计数法的数字类型都是float。
## bool 布尔值
- 表示真假的逻辑值
- 只有两个:True/False
- True == 1 False == 0
- 在使用时,True/False和1/0在基本上可以相互替换,但两者属于不同数据类型
## str 字符串
- 使用单引号、双引号、三单/双引号包裹的字符为字符串,如’LOVE’、”LOVE”、”’LOVE”’、”””LOVE”””
- 三单/双引号用于创建多行字符串
- str型数据内容不可变
## 基本数据类型之间的强制类型转换
- 基本数据类型可以通过int() float() bool() str() 四个函数进行强制转换
- int()
- int(1.9) # -> 返回 1,强制将小数点后所有内容略去,可以转换使用科学计数法表示的数
- int(True) # -> 返回 1,int(False) 输出 0
- int(“1”)
# -> 返回 1,只有具有数字特征的字符串(字符串中仅包含数字)才能强制转换为int型,不能转换带有小数点的字符串,不能转换科学计数法表示的数字字符串,不能转换字符串”True”/”False”
- float()
- float(1) # -> 返回 1.0,对转换int型直接在整数后边加小数点和零
- float(True) # -> 返回 1.0, float(Float) 输出0.0,在这里True/False可以当作1/0来看
- float(“1.23″) # -> 返回 1.23,只有具有数字特征的字符串(字符串中包含数字、小数点或科学计数法中的e)才能强制转换为float型,不能转换字符串”True”/”False”
- bool()
- bool(1) # -> 返回True,任何不为零的数转换为布尔值都为Ture
- bool(“1acd”) # -> 返回 True, 任何不为空的字符串转换为布尔值都为Ture
- bool(None) # -> 返回 False
- str()
- str(1.23) # -> str()可以将任何基本数据类型转换为str型
## 基本数据类型的运算及基本数据类型自动转换
- 基本数据类型可以进行使用运算符进行运算
- 运算符包括:
- 基本四则运算:加+ 减- 乘* 除/
- 整除// 取余% 幂运算**
- 逻辑运算符:小于等于<= 等于== 大于等于>= 与and 或or 非not
- int型和float型数据的运算与数学运算无异,但int型和float型之间的运算会将结果自动转换为float型
- 进行运算时,True/False分别当作1/0使用,与int型相同
- 使用逻辑运算符时,返回值一定是True/False
- 优先级
- 先乘除后加减,实在弄不清楚就加括号将该运算提升至最高优先级
- str型数据与其他基本数据类型之间只能使用 * ** and or not运算符
## and or not
- and 与
- 两个为真才为真,一个为假就是假
- a and b # -> 若a为真返回b,若a为假返回a
- or 或
- 一个为真即是真,两个为假才是假
- a or b # -> 若a为真返回a,若a为假返回b
- not 非
- 取反操作
- not True == False # -> True
## 数字的进制
- Python默认使用十进制,除此还可以使用三种进制
- 0b或0B开头的数字代表二进制
- 0o或0O开头的数字代表八进制
- 0x或0X开头的数字代表十六进制
## str型数据常用操作
- str型的运算
- +
- 使用加号进行拼接
- 加号左右两个数据必须是str型
- “LO” + “VE” # -> “LOVE”
- *
- 使用乘号进行复制
- “LOVE” * 3 # -> “LOVELOVELOVE”
- 使用\转义
- 为打印特殊字符或某些字符有歧义,使用\进行转义
- \n 换行符 \t 制表符
- 用 \’ 和 \” 来表示单、双引号
- 需要输出一个反斜线字符,连续输入两个反斜线
- 使用[ ]提取字符串中的单个字符
- “LOVE”[1] # -> “O”
- 方括号内数字从 0 开始计数,最大不超过字符串长度,分别指向字符串中的每一单个字符
- 使用[start:end:step]进行字符串分片操作,step默认为1
- [:]提取从开头到结尾的整个字符串
- [start:]从start提取到结尾
- [:end]从开头提取到 end – 1
- [start:end]从start提取到end – 1
- [start:end:step]从start提取到end – 1,每隔step个字符提取
- start,end,step可以为负数,start和end为负数表示从右往左数,从-1开始计数,step为负数则表示倒序
- 与str型数据相关的常用函数
- len():获取字符串长度
- len(“LOVE”) # -> 4
- split():字符串分割,返回一个列表
- “L O V E”.split(” “) # -> [‘L’, ‘O’, ‘V’, ‘E’]
- join():字符串合并
- “, “.join([“L”, “O”, “V”, “E”]) # -> ‘L, O, V, E’
- index():返回制定字符索引
- “LOVE”.index(“L”) # -> 0
- format():格式化输出
- “{0}, I love you!”.format(“Lily”) # -> ‘Lily, I love you!’
- replace():字符替换
- “Hot”.replace(“H”, “P”) # -> “Pot” # 将所有制定字符替换为另一个字符
- s.replace(被替换的子串, 用于替换的新子串, 需要替换多少处)
- strip():去除字符串两端制定字符
- “…LOVE…”.strip(“.”) # -> “LOVE”
- ” LOVE “.strip() # -> “LOVE”
- 字符串大小写相关
- s.capitalize():首字母大写
- s.title():所有单词首字母大写
- s.upper():所有单词所有字母大写
- s.lower():所有单词所有字母小写
- s.swapcase():单词大小写逆转
- 更多关于str型的函数请查看标准文档:https://docs.python.org/3/library/stdtypes.html#string-methods
本文参考书籍:[美]Bill Lubanovic 《Python语言及其应用》
posted on 2018-06-29 11:17 StanleyMason 阅读(…) 评论(…) 编辑 收藏