一、基本数据类型
1.字符串 str (用''or“”表示)
字符串中每个组成部分为字符,python中只要是用引号引起来的都叫字符串
---特征:
加法
n1 = "alex"
n2 = "sb"
n4 = "db"
n3 = n1 + n2 + n4
print(n3)
alexsbdb
乘法
n1 = "alex"
n2 = n1 * 4
print(n2)
alexalexalexalex
---capitalize() 首字母大写
---casefold() 将所有的字母变小写,但是其功能更全,可以将很多未知的相应变成小写
---lower() 将所有的字母变小写,功能没有casefold齐全
---center(self,width,fill = None) self可以不用管,但是width必须赋予一个数
test = 'mada' # 表示设置宽度,并将内容居中 v = test.center(20,'*') # 20代指总长度 # *用来空白位置填充,只能为同一个字符,可有可无 print(v) ********mada********
---count(self,sub,start=None,end=None) 去字符串中寻找,寻找子序列的出现次数
---encode(self,encode='utf-8',errors='strict')
---endwith(self,suffix,start=None,end=None)表示以什么结尾
---startwith(self,suffix,start=None,end=None)表示以什么开始
---find(self,sub,start=None,end=None) # 未指定开始结束时,从开始往后找,找到第一个后,获取其位置
---index(self,sub,start=None,end=None)# 作用同find,但是索引不到内容时会报错,因此可以忽略该用法
---format(*args,**kwargs)
test = 'i am {name},age{a}' # format 作用为格式化,将一个字符串中的占位符替换为指定的值 v= test .format(name='mada',a=18) print(v) i am mada,age 18
---format_map(self,mapping)
test = 'i am {name},age{a}' # format_map 作用也为格式化,但是传入的值指定为{'name':'mada','a':19} v= test .format_map('name':'mada','a':19) print(v) i am mada,age 18
---isalnum() # 判断字符串中是否只包含字母和数字
---isalpha() # 判断字符串中是否是字母、汉字,是返回true,否返回false
---isdecimal() <isdigit()<isnumeric()# 都可用来判断当前输入是否是数字,但isdigit()可以判断@2之类的数字;isnumeric()可以判断@2、二之类的数字。
---isprintable()判断是否存在不可显示的字符
如:# 制表符
#
换行
---isspace()判断是否全部是空格
---istitle()判断是否是标题
---title()将内容转换为标题形式
--join()将字符串中的每一个元素按照指定分隔符进行拼接
v = "_".join(test) print(v) 你_是_风_儿_我_是_沙
---islower()判断是否全部是小写
---lower() 转换为小写
---isupper()判断是否全部是大写
---upper()转换为大写
# 以下三者作用都为移除指定字符串,,有限最多匹配,可去除
---lstrip()去除左右空白
---rstrip()去除右空白
---strip()去除左空白
---translate()对应关系替换
test = "aeiou" test1 = "12345" v = "asiduf" m = str.maketrans("aeiou", "12345") new_v = v.translate(m) print(new_v) 1s3d5f
---rpartition()将字符串按照分隔符分割为三部分
test = "testasdsddfg" v = test.partition('s') print(v) v = test.rpartition('s') print(v) ('te', 's', 'tasdsddfg') ('testasd', 's', 'ddfg')
---split()、rsplit()分割为指定个数,不指定时默认全部分割,但是不显示分隔符
v = test.split('s',2) print(v) ['te', 'ta', 'dsddfg']
---splitlines()分割,只能根据,true,false:决定是否保留换行
test = "asdfadfasdf asdfasdf adfasdf" v = test.splitlines(False) print(v) v = test.splitlines(True) print(v) ['asdfadfasdf', 'asdfasdf', 'adfasdf'] ['asdfadfasdf ', 'asdfasdf ', 'adfasdf']
---startswith()endswith()以xxx开头,以xx结尾
---swapcase()大小写转换,大写变小写,小写变大写
---isidentifier()字母,数字,下划线 : 标识符 def class
a = "def" v = a.isidentifier() print(v) True
---replace()将指定字符串替换为指定字符串
test = "alexalexalex" v = test.replace("ex",'bbb') print(v) v = test.replace("ex",'bbb',2) print(v) albbbalbbbalbbb albbbalbbbalex
...
2.数字 int,所有的功能都放在int里面
---特征:加+、减-、乘*、除/、余%、商//
---将字符串转换为数字
a = '123' print(type(a),a) # 输出结果为a的类型,以及a的值 class<‘str’> 123 b = int(a) print((type(b,b)) # 输出结果为b的类型,以及b的值 class<‘int’> 123
---bit_length() # 表示当前数字的二进制,至少用n位表示
age = 5 #1 1 # 2 10 # 3 11 # 4 100 # 5 101 # 当前数字的二进制,至少用n位表示 r = age.bit_length() print(r) 3
3.列表 list
4.元祖 tuple
5.字典 dict
6.布尔值 bool