首页 > 编程语言 > 详细

python基本数据类型操作

时间:2020-11-12 15:09:49      阅读:34      评论:0      收藏:0      [点我收藏+]

str 字符串 

#1.进行字符串转换 首字母转换成大写
# name = wangjianhui
# v = name.capitalize()
# print(v)

#2. 字符转换小写
# name = WangJianHui #将所有的字符串转换成小写 包括多种语言
# v = name.casefold()
# print(v)
# name = WangJianHui #将所有字符转换成小写,只限于英文
# v = name.lower()
# print(v)

#3 填充空白
# name = wangjianhui  #填充空白 将字符串内容居中
# v = name.center(50,*)
# print(v)

#4 查询索引
# name = wangjianhui123321 查询出现字符的次数
# v = name.count(1)
# v = name.count(wang,0,15)指定查询位置以某索引开始到某索引结束
# print(v)

#5查询是否已某字段开始或结束
# name = wangjianhui
# v = name.endswith(hui)
# print(v)
# v = name.startswith(wang)

#6 找到制表符\t,进行替换(包含前面的值)
# name = name:\twangjianhui\nage:\t19
# v = name.expandtabs(10)#
# print(v)

#7 查询索引位置
# name = wangjianhui
# v = name.index(w) 字符串中不存在的内容 查找会报错
# print(v)
# v = name.find(w) 字符串不存在的内容 查找返回-1
# print(v)

#8 字符串格式化方法
# infomesion = name:%sage:%sjob:%s  %s占位符
# print(infomesion%(wangjianhui,19,it))

# infomesion = name:{0};age:{1};job{2} format方法
# v = infomesion.format(wangjianhui,19,it)
# print(v)
# infomesion = name:{name};age:{age};job{nianling}
# v = infomesion.format(name=wangjianhui,age=19,nianling=it)
# print(v)

# infomesion = name:{name};age:{age};job{nianling} format_map 以字典的形式进行填充
# v = infomesion.format_map({name:wangjianhui,age:19,nianling:it})
# print(v)

#9字符串内容进行判断
#是否是数字、汉字不能包含特殊符号
# name = wangjianhui男子汉1
# v = name.isalnum()
# print(v)
#判断是否是数字
# name = 
# v1 = name.isdecimal() #只能判断是否为阿拉伯数字
# v2 = name.isdigit() #特殊数字如②也可识别
# v3 = name.isnumeric()#阿拉伯数字及② 二都可识别
# print(v1,v2,v3)

#10
#判断是否是标识符
# name = wangjianhui
# v = name.isidentifier()
# print(v)

#11
#判断是否全部是小写
# name = WangJianHui
# v1 = name.islower()
# v2 = name.isupper()
# print(v1,v2)

#12
#全部变大写 对应全部小写lower
# name = wangjianhui
# v = name.upper()
# print(v)


# 13
# 是否包含隐含的xx
# name = "钓鱼要钓刀鱼,\n刀鱼要到岛上钓"
# v = name.isprintable()
# print(v)

# 14
# 是否全部是空格
# name =     
# v = name.isspace()
# print(v)

#15
#内部循环每个元素
# name = wangjianhui
# v = _.join(name)
# print(v)
# name = [王建辉,金丽珍]
# v = .join(name)
# print(v)

#16
#字符替换
# name = aleX
# v = name.replace(l,p)
# print(v)

#17
#转换字节类型
# name = 王建辉
# v1 = name.encode(encoding=utf-8)
# v2 = name.encode(encoding=gbk)
# print(v1,v2)

#18左右填充
# center,rjust,ljust
# name = wangjianhui
# v = name.ljust(20,*)
# print(v)

#19对应关系加翻译
# m = str.maketrans(wangjianhui,123456)
# name = wangxiaoerweqrrwrwrq;wfasfs
# v = name.translate(m)
# print(v)

#20保留分割的元素
# content = "李泉SB刘康SB刘浩SB刘一"
# v = content.replace(SB,Love)
# print(v)
# v = content.replace(SB,Love,1) 指定几个字符替换
# print(v)

# 21,移除空白,\n,\t,自定义
# name = alex\t
# v = name.strip() # 空白,\n,\t
# print(v)

# 22. 大小写转换
# name = "Alex"
# v = name.swapcase()
# print(v)

#23填充0
# name = wangjianhui
# v = name.zfill(30)
#
# name1 = wangjianhui1
# v = name + name1
# print(v)

###### 字符串功能总结:
# name = alex 创建字符串给变量 或str()
# name.upper()  转换为大写
# name.lower()转换为小写
# name.split() 切割
# name.find() 查找索引 没有不会报错
# name.strip() 移除空白或指定符号
# name.startswith()以什么内容开始
# name.format() 表格填充
# name.replace() 保留分割元素替换
# "alex".join(["aa",bb]) 添加分割

###### 额外功能:
# name = "alex"
# name[0]
# name[0:3]
# name[0:3:2]
# len(name)
# for循环,每个元素是字符
# for i len(name):
#     print(name[i])

 

int 整数

#1. 获取当前数值二进制最小位数
# name = 10
# v = name.bit_length()
# print(v)

#2.获取当前数据的字节表示
# name = 15
# v = name.to_bytes(5,byteorder=big) #位数表示 从后往前正常显示
# v1 = name.to_bytes(5,byteorder=little)#从前往后反向显示
# print(v,v1)

 

bool 布尔值

#1. False True
#0为False 1或其他为True
# print(bool(0))


list 列表

# user_list = [李泉,刘一,刘康,豆豆,小龙] # 可变类型
# PS:
#功能集合
#1.追加 append
# user_list = [李泉,刘一,刘康,豆豆,小龙]
# user_list.append(王二)
# print(user_list)

#2.清空 clear
# user_list = [李泉,刘一,刘康,豆豆,小龙]
# user_list.clear()
# print(user_list)

#3.拷贝 浅拷贝copy
# user_list = [李泉,刘一,刘康,豆豆,小龙]
# user_list1 = user_list.copy()
# print(user_list1)

#4.计数 统计某个列表字符数量 count
# user_list = [李泉,刘一,刘康,豆豆,小龙]
# user_c = user_list.count(小龙)
# print(user_c)

#5.扩展列表 extend
# user_list = [李泉,刘一,刘康,豆豆,小龙]
# user_list.extend([王建辉,王二小])
# print(user_list)

#6.查找元素索引,没有则报错 index
# user_list = [李泉,刘一,刘康,豆豆,小龙]
# v = user_list.index(小龙)
# print(v)

#7.删除 pop(按照索引删除,并保存删除值) remove(指定删除内容不保存) del(索引删除不保留)
# user_list = [李泉,刘一,刘康,豆豆,小龙]
# v = user_list.pop(1)
# print(v,user_list)

# del user_list[1]
# print(user_list)

# user_list.remove(李泉)
# print(user_list)

#8.列表翻转 reverse
# user_list = [李泉,刘一,刘康,豆豆,小龙]
# user_list.reverse()
# print(user_list)

#9.排序 sort
#user_list = [1,李泉,刘一,刘康,豆豆,小龙]#数字和字符不能进行排序
# user_list = [10,20,5,67,44]
# user_list.sort() #从小到大
# print(user_list)
# user_list.sort(reverse=True/False) 从大到小或从小到大
# print(user_list)

#10.

######  额外:
# user_list = [李泉,刘一,李泉,刘康,豆豆,小龙]
# user_list[0]
# user_list[1:5:2] #显示从索引开始结束 跳着显示
# del user_list[3]
# for i in user_list: #循环显示
#     print(i)
# user_list[1] = 姜日天 覆盖或修改
# user_list = [李泉,刘一,李泉,刘康,豆豆,[日天,日地,泰迪],小龙] #嵌套

 

range,enumrate

# 1. 请输出1-10
# 2.7: 立即生成所有数字
# range(1,11) # 生成 1,23,,4,56.10

# 3.x: 不会立即生成,只有循环迭代时,才一个一个生成
# for i in range(1,11): #
#     print(i)

# for i in range(1,11,2): #
#     print(i)

# for i in range(10,0,-1): #
#     print(i)

# 2. range: 三个参数
#
# li = [eric,alex,tony]
# # range,len,li循环
# for i in range(0,len(li)):
#     ele = li[i]
#     print(ele)


# li = [eric,alex,tony]
# for i in li:
#     print(i)

# for i in range(0,len(li)):
#     print(i+1,li[i])

# enumerate额外生成一列有序的数字
# li = [eric,alex,tony]
# for i,ele in enumerate(li,1):
#     print(i,ele)
#
# v = input(请输入商品序号:)
# v = int(v)
# item = li[v-1]
# print(item)

 

tuple:元组,不可被修改的列表;不可变类型

#创建元组
#name = (wnagjianhui,wangxiaoer,wangerxiao)
#1.获取元祖字符个数
# name = (wangjianhui,wangxiaoer,wangerxiao)
# v = name.count(wangjianhui)
# print(v)

#2.获取索引位置
# name = (wangjianhui,wangxiaoer,wangerxiao)
# v = name.index(wangjianhui)
# print(v)

#3.额外
# user_tuple = (alex,eric,seven,alex)
# for i in user_tuple:
#     print(i)

# v = user_tuple[0]

# v = user_tuple[0:2]
# print(v)

# user_tuple = (alex,eric,seven,[陈涛,刘浩,赵芬芬],alex)
# user_tuple[0] = 123   x
# user_tuple[3] = [11,22,33] x
# user_tuple[3][1] = 刘一
# print(user_tuple)

# li = [陈涛,刘浩,(alex,eric,seven),赵芬芬]
# ****** 元组最后,加逗号 ******
# li = (alex,)
# print(li)

 

dict:字典: 可变类型

#1.清空字典 clear
# namedic = {name:wangjianhui,age:19,job:it}
# namedic.clear()
# print(namedic)

#2.浅拷贝 copy
# namedic = {name:wangjianhui,age:19,job:it}
# namedic1 = namedic.copy()
# print(namedic1)

#3.根据key值获取value值,不存在不报错 get
# namedic = {name:wangjianhui,age:19,job:it} get查找根据key找value 找不到不报错
# namedic1 = namedic.get(name)
# print(namedic1)

#4.删除key对应的value值 并保存删除值
# namedic = {name:wangjianhui,age:19,job:it}
# namedic1 = namedic.pop(name)
# print(namedic1,namedic)

# 5. 随机删除键值对,并获取到删除的键值 popitem
# dic = {k1:v1,k2:v2}
# v = dic.popitem()
# print(dic)
# print(v)

# v = dic.popitem() # (k2, v2)
# print(dic)
# print(v[0],v[1])

#6.增加字典 如果存在则不作操作
# namedic = {name:wangjianhui,age:19,job:it}
# namedic.setdefault(wait,1111)
# print(namedic)

#7.批量增加或修改
# namedic = {name:wangjianhui,age:19,job:it}
# namedic.update({name:wangxiaoer,wait:111})
# print(namedic)

#8.批量创建字典
# dic = dict.fromkeys([k1,k2,k3],321)
# print(dic)

# ########## 额外:
# - 字典可以嵌套
# - 字典key: 必须是不可变类型
# dic = {
#     k1: v1,
#     k2: [1,2,3,],
#     (1,2): lllll,
#     1: fffffffff,
#     111: asdf,
# }
# print(dic)
# key:
#     - 不可变
#     - True,1

# dic = {k1:v1}
# del dic[k1]

 

set集合

# s1 = {"alex",eric,tony,李泉,李泉11}
# s2 = {"alex",eric,tony,刘一}
# 1.s1中存在,s2中不存在
# v = s1.difference(s2)
# print(v)
# #### s1中存在,s2中不存在,然后对s1清空,然后在重新复制
# s1.difference_update(s2)
# print(s1)

# 2.s2中存在,s1中不存在
# v = s2.difference(s1)
# print(v)

# 3.s2中存在,s1中不存在
# s1中存在,s2中不存在
# v = s1.symmetric_difference(s2)
# print(v)
# 4. 交集
# v = s1.intersection(s2)
# print(v)
# 5. 并集
# v = s1.union(s2)
# print(v)

# 6. 移除
# s1 = {"alex",eric,tony,李泉,李泉11}
# s1.discard(alex)
# print(s1)

# s1 = {"alex",eric,tony,李泉,李泉11}
# s1.update({alex,123123,fff})
# print(s1)
# ##### 额外:

# s1 = {"alex",eric,tony,李泉,李泉11}
# for i in s1:
#     print(i)

# s1 = {"alex",eric,tony,李泉,李泉11,(11,22,33)}
# for i in s1:
#     print(i)

 

python基本数据类型操作

原文:https://www.cnblogs.com/dahuige/p/13963718.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!