基本数据类型
数字类型
只能存取一个值
数字是不可变类型,根据id来看,不可变类型是可hash
数字主要是用来计算的,使用方法不是很多,记住如下一种
1.整数类型(int)当十进制用二进制来表示的时候,最少使用的位数
age = 18
print(age.bit_length())
2.浮点型(float)身高,体质参数,体重
salary = 3.1 #salary = salary(3.1)
print(salary,type(salary))
3.复数(complex)
x = 1 + 2j
print(x.real)
print(x.imag)
print(type(x))
布尔值(bool)
布尔值,只有两种一种是True,一种是False
真为:True
假为:False
在数字中:只有0为False,其余为True
在字符串中:只有空为False,其余为True
字符串(str)
字符串只有一个值
字符串是有序的
不可变类型,可被hash
1.索引
字符串是有序的,可以按照索引取值
name = "tianjianyu"
print(name[0]) #取第一个值
print(name[-1]) #取最后一个值
2.切片就是通过[索引:索引:步长]取字符串的一段,行成一段新的字符串,原则是顾头不顾尾
name = "tianjianyu"
print(name[0:4]) #比如取tian字符串,t为0,n为3,但是切片顾头不顾尾,需要3的位置在加1位,才能取到tian
print(name[0:4:1]) #这个1为步长,默认为1,也可以自己指定
print(name[:]) #初始位置不写,最后位置也不写,取的是该字符串的全部
print(name[::-1]) #初始位置不写,最后位置也不写,但是步长为-1,相当于将整个字符串翻转
3.captalize,swapcase,title
str_1 = "tianjianyu"
print(str_1.capitalize()) #首字母大写
str_2 = "Tian Jian Yu"
print(str_2.swapcase()) #大小写翻转
str_3 = "tian jian yu"
print(str_3.title()) #每个字母的首字母大写
str_4 = "tianjianyu"
print(str_4.upper()) #将字符串的所有字母转换为大写
str_5 = "TIANJIANYU"
print(str_5.lower()) #将字符串所有字母转换为小写
4."center"用于填充,比如需要长度为20,name会居中,总长度为20,用空格填充
name = "tian"
print(name.center(20))
5.expandtabs
# name='egon\thello'
# print(name.expandtabs(10))
"""
S.expandtabs(tabsize=8) -> str
Return a copy of S where all tab characters are expanded using spaces.
If tabsize is not given, a tab size of 8 characters is assumed.
1.expandtabs后边的参数为几就把几个分在一起;
比如为2,那么就两个一组,前边如果有一个了,就在补充一个;
反之,如果两个一组前边一个没有,那么