Python数据类型——整型,布尔型,字符串
整型(int)
32位电脑可提供 -2**31~2**31-1 个数字
64位电脑可提供 -2**63~2**63-1 个数字
python3 所有的整数都是int,不存在长整型long。
可以进行 加+ 减- 乘* 除/ 乘方** 取余% 整除// 运算。
布尔型(bool)
True和False 两种结果
对于其他类型的转换成bool值,除0外,均为True
true转换成整形时为 1
print(int(True)) #1
false转换成整形时为0
print(int(False)) #0
True 和 False 转换成字符串时为"True","False"
字符串(str)
字符串 “汉字字母和数字”, 相同类型的字符串可+不可-,可与数字相*不可/。str()获得字符串
"abc" + "def" = "abcdef" "abc" * 3 ="abcabcabc"
下标
![](https://upload-images.jianshu.io/upload_images/15622657-2e9aed5ad9ab051f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
索引str[a]
取出字符串中的某一个字符
print(msg[2]) #C print(msg[-3]) #a
切片(区间)str[a:b]
取出字符串中的一个区间,取头不取尾
从左往右数,从下标为3的开始,到第五个,但不取最后一个。
print(msg[3:5]) #D1
从右往左数,从下标为-5,到下标为-2,不取最后一个,结果从左往右。
print(msg[-5:-2]) #34a
步长 text[a:b:c]
a为起始位置,不填为字符串起始位置;b为结束位置,不填为字符串末尾位置;c为步长,控制截取距离,正数为从左往右(0开始),负数为从右往左(-1开始),
print(msg[1:4:2]) # BD
print(msg[-1:5:-1]) #cba43
字符串相关操作
str.upper()
使字符串全部大写
str.lower()
使字符串全部小写
str.captialize()
使字符串首字母大写,其他变小写
str.titile()
字符串中每个非字母的首字母大写(每个字母串首字母大写)
str.startswith()
查看字符串是否以()开头,返回True或False,可切片设定查找范围
s = "alex_wusir_taibai" print(s.startswith("b",-3,-1)) #True print(s.startswith("b",-1,-3)) #False
str.endswith()
查看字符串是否以()结尾,返回True或False,可切片设定查找范围
str.count(“a”,b,c)
统计"a"在字符串中(b到c的范围内,不含c位置)出现次数
s = "alex_wusir_taibai" print(s.count("b",-1,-3)) #0
str.find(a,b,c)
查找a在字符串中(b~c范围,不含c位置)第一次出现时的下标,没有返回-1
s = "alex_wusir_taibai" print(s.find("b",-1,-3)) #-1 print(s.find("a",2,-1)) #12
str.index()
查找a在字符串中(b~c范围,不含c位置)第一次出现时的下标,没有时报错
str.join()
text中的每两个字符之间插入()
li = ["alex", "wusir","taibai"] s = "_".join(li) print(s) #alex_wusir_taibai
str.replace(a,b,c)
用字符串"a"替换text中的"b",替换c个(如果有)
str.strip()
去除字符串两端的空格和换行符,或()的内容#必须是两端的
str.splite()
以()分割字符串,各部分均不含()
str.format(,,···)
格式化输出,以()中的内容添加到str中的{}中
str.isdigit()
判断text是不是纯数字,不含字母,符号,汉字
str.isalnum()
判断text是否由字母数字汉字组成,不含空格,标点等符号
str.isalpha()
判断text是否由纯字母和汉字,不含数字和符号
str.isupper(),str.islower()
判断str是不是大写,小写
str.isspace()
判断是不是空格
len(str)
获取text长度