python基本数据类型
1、数字 int类型,
- python3 所有都是int
- python2 一定长度是int ,超出范围long
int功能:
int----将字符串转换成数字:
1 a = "123" #字符中类型 2 b = int(a) #转换成数字类型 3 b1 = int(a) + 1000 4 print(a) #print(type(a))查看字符串类型 5 print(b) #print(type(b))查看字符串类型 6 print(b1)
1 num = "0011" 2 v = int(num, base=16) #base指定转换进制数,默认转成十进制 3 print(v)
bit_lenght -------当前数字的二进制,至少用n位表示
1 age = 10 2 r = age.bit_length() 3 ptint(r)
2、字符串 str类型
capitalize ---------首字母大写
1 test = "alex" 2 v = test.capitalize() #修改首字母大写 3 print(v) #执行完结果Alex
casefold -----将大写字母改成小写
lower -------将大写字母改成小写
1 test = "aLex" 2 v1 = test.casefold() #执行完结果alex 3 print(v1) 4 v2 = test.lower() 5 print(v2) #执行完结果alex
center ------设置宽度,并将内容居中(两边加空格)
ljust ------设置宽度,并将内容居左(空余地方可以是空格填充,也可以是一个字符)
rjust ------设置宽度,并将内容居右(空余地方可以是空格填充,也可以是一个字符)
1 test = "alex" 2 #20 代指中长度 3 # " * " 空白未知填充(只能填一个字符)可有可无 4 v = test.center(20,"*") 5 print(v) #执行结果*******alex*******
count ------计算当前出现的个数
1 test = "alexalex" 2 v = test.count('ex',5,6) #去字符串中寻找子序列出现的次数;5和6是设置的起始位置和结束位置 3 print(v)
encode
decode
endswiith ------以xxx结尾
1 test = 'alex' 2 v1 = test.endswith('ex') #判断是否以ex结尾 3 v2 = test.endswith('e') #判断是否以e结尾 4 print(v1) #输出结果True 5 print(v2) #输出结果False
startwith -----以xxx开头
1 test = 'alex'
2 v1 = test.startswith('al') #判断是否以ex结尾,可以设置起始位置
3 v2 = test.startswith('e') #判断是否以e结尾
4 print(v1) #输出结果True
5 print(v2) #输出结果False
*****************find ------从开始往后找,找到第一个之后,获取其位置
1 test = 'alexalex' 2 v1 = test.find('al') 3 print(v1)
format ----格式化,将一个字符串中的占位符替换为指定的值
1 test = ' i am {name}, age {a}' 2 print(test) 3 v1 = test.format(name='alex',a=19) 4 print(v1)
1 test = ' i am {0}, age {1}' 2 print(test) 3 v1 = test.format('alex',19) 4 print(v1)
isalnum------判断字符串中是否只包含 数字和字母
1 tset = 'dgjhgs123456' 2 v = tset.isalnum() 3 print(v)
expandtabs -----断句
1 test = "username\temail\tpasswd\nxiaoming\tming@q.com\t123\nxiaohuang\thuang@q.com\t123\nxiaohong\thong@q.com\t123"
2 v = test.expandtabs(20) #\t断句
3 print(v) #\n代表换行
isalpha -----判断字符串中是否是字母(中文也包含)
1 tset = 'dgjhgs' 2 tset1 = '中文' 3 v = tset.isalpha() 4 v1 = tset1.isalpha() 5 print(v) 6 print(v1)
isdecimal -----判断输入的值是否是数字(十进制数字)
isdigit ------判断输入的值是否是数字,可以判断特殊
isnumeric -----------判断输入的值是否是数字,可以判断特殊,可以判断中文
1 tset = '123' 2 tset1 = '②' 3 v = tset.isdecimal() 4 v1 = tset1.isdigit() 5 print(v) 6 print(v1)
swapcase -----大小写转换
test = 'aLex' v = test.swapcase() print(v)
isidentifier ------字母,数字,下划线 :标识符 def class
1 a = '_123' #不能只是数字 2 v = a.isidentifier() 3 print(v)
isprintable -----------打印输出,如果存在不可显示的字符,判断fales
1 #是否存在不可显示的字符 2 #\t 制表符 3 #\n 换行 4 test = 'hghg\tagjhg' 5 v = test.isprintable() 6 print(v)
islower ------判断是否都是小写
************lower ------将字母转换成小写
isupper -----判断是否都是大写
************upper -------将字母转换成大写
isspace -------判断是否全部是空格
istitle -------判断是不是标题(首字母大写)title标题转换成首字母大写
***************join------将字符串中的每一个元素按照指定分隔符进行拼接
1 test = '欢迎学习python' 2 print(test) 3 t = ' ' 4 v = t.join(test) #也可以v = ' '.join(test) 5 print(v)
**********strip -------去除左右空格,还能去除\t制表符 \n换行,默认是去除空格,可以指定去除字符
lstrip-------去除左边空格
rstrip--------去除右边空格
1 t1 = 'asdfgh' 2 t2 = '123456' 3 t3 = 'sajhjhkaHskhdjfhsdgkLJLJajl' 4 n = t3.lower() #将字母转换为小写 5 m = str.maketrans(t1 ,t2) #将T1、T2进行变量对应 6 v = n.translate(m) #将对应的变量进行转换 7 print(v)
partittion ------将字符串分割,只能分成三部分
rpartition ----------从右将字符串分割,只能分成三部分
***************split ---------默认全部都分割,但是指定参数拿不到,可以指定分割数量
rsplit ----------默认从右边全部都分割,但是指定参数拿不到,可以指定分割数量
splitlines -------分割,只能根据Ture false 是否保留换行
swapcase ------大小写转换
replace -------替换字符
PS:基本常用类型:join split find strip upper lower replace
特殊:
1 test = 'alexalex' 2 #索引,下标,获取字符串中的某一个字符 3 v = test[0] 4 print(v) 5 6 #切片 7 v = test[0:1] #0=<取值<1 -1代表倒数第一位 8 print(v)
len-----获取字符数量(python3)
1 t = 'hhh杨' 2 v = len(t) 3 print(v)
for循环
for 变量名 in 字符串:
print(变量名)
1 #单个字符循环输出 2 t = "这年头儿到处都是大师,可6了" 3 #第一种方式 4 index = 0 5 while index < len(t): 6 v = t[index] 7 print(v) 8 index +=1 9 #第二种方式 10 for n in t: 11 print(n)
range --------创建连续数字
1 v = range(100) #默认是连续数字大于等于0小于100;也可以创建不连续的(0,100 ,5)创建不连续数字需要写全创建区间 2 for item in v: 3 print(item)
3、列表 list类型
类和对象的关系
1 str 2 name = "alex"
1.列表格式
2.列表中可以嵌套任何类型(中括号括起来,逗号分割每个元素,列表中的每个元素可以是数字、列表、布尔值......所有的都能放进去,“集合”,内部放置任何东西)
1 #list #类,列表 2 li = [1,12,55,[665,"alex","李杰"],"tom",Ture]
3.索引取值
1 print(li[2])
4.切片,切片结果也是列表
1 print(li[3:-1])
5.for循环&&while循环
1 for item in li: 2 print(item)
6.列表元素可以被修改
1 li = [1,22,33,[23,"alex","李杰"],"tom",Ture]
7.索引
1 #修改 2 li[1] = 120 3 print(li) 4 li[1] = [11,22,33,44] 5 print(li) 6 #切片修改 7 li[1:3] = [120,90] 8 print(li) 9 10 #删除 11 del li[1] 12 print(li) 13 #切片删除 14 del li[2:6] 15 print(li)
8.in操作
1 li = [11,22,33,["alex","李杰",98],"tom",Ture] 2 v = 11 in li 3 print(v)
9.操作
1 li = [11, 22, 23, ["alex", "李杰", 98], "tom", "Ture"] 2 li[4][1][0]
10.转换
字符串转列表,内部使用for循环
1 s = "hdkjhjhhjagg" 2 new_s = list(s) 3 print(new_s)
列表转换成字符串,需要自己写for循环一个一个处理:既有数字又有字符串
1 li = [11,22,33,"123","alex"] 2 s = "" #申明一个空值 3 for i in li: 4 s = s + str(i) #将循环出来的值转换成str字符串类型 5 print(s)
列表中的元素只有字符串的时候,直接使用字符串join方法
1 li = ["123","alex"] 2 v = "".join(li) 3 print(v)
append ------原来值最后追加(直接追加)
clear ------清空列表
copy -------拷贝,浅拷贝
count ------计算元素出现的个数
extend ------扩展原列表,参数:可迭代对象(iter),内部执行for循环
index ------从前往后找,根据值获取当前值索引位置(左边优先)
insert ------在指定索引位置插入元素
pop ------删除某个值,并获取删除的值(可以指定索引,默认删除最后一个)
remove ------删除列表中的指定值,左边优先
PS: pop remove del li[0] del li[7:9] clear 都是删除
reverse -----将当前列表进行翻转
sort ------将当前列表排序,可以指定参数reverse=True 降序
4、元祖 tuple (元素不能修改,不能被增加或者删除)
- 书写格式(在结尾处多加一个逗号)
- 索引
- 切片
- 可以被for循环,可迭代对象
- 转换
- 元祖的一级元素不可以被修改、删除、增加
count -------统计指定元素在元祖中出现是次数
index -----起始位置
5、字典 dict类型
- key值不可以是布尔值、列表、字典
- vale值可以是任何
- 字典是无序的
需要掌握的 PS:keys() values() items() get update
6、布尔值 bool类型
########################################整理#############################################
一、数字
int(...)
二、字符串
replace 替换字符串
find 查找字符串
join 连接字符串
strip 去除空格
startwith 判断以什么开头
split 以XX字符串分割
upper 将字符串转大写
lower 将字符串转小写
format 格式化,将一个字符串中的占位符替换为指定的值
三、列表
append 追加
extend 扩展原列表
insert 插入
索引、切片、循环
四、元祖
元素不能被修改
五、字典
get
update
keys
values
items
for循环
索引
六、布尔值
bool(...)
false值: None " " () [] {} 0