2021-05-05 数组、 元组、字典、字符串常见操作
1 数组的应用
1.1元素的互换
a = input("请输入a:")
b = input("请输入b:")print("a = %s;b = %s"%(a,b))c = a ##先把 老王 放到 仓库
a = b ##在把 老铁 放到 老王的位置
b = c ##从仓库中 把老王 放到 老铁 中print("a = %s;b = %s"%(a,b))
1.2冒泡排序
"""升序
原始: 22,11,33,66,88,44,55
第一轮: 11,22,33,66,44,55,88,最后一个是最大值
第二轮 11,22,33,44,55,66,88,倒数第二是 第2大的值
。。。最多几轮:元素个数 -1
"""list = [22,11,33,66,88,44,55]
print("排序之前:",end="")
print(list)for i in range(0, len(list)): #确定 几 轮for j in range(1, len(list) - i):if(list[j] < list[j-1]): ##前面的比后面大c = list[j]list[j] = list[j-1]list[j - 1] = cprint(list)print("排序之后:",end="")
print(list)
1.3选择排序
选择排序 0 1 2 3 4 5 6 下标
原始: 22,11,33,66,88,44,55
第一趟:找出最大值88,下标4。从[1,6]中找 ; 最后一个下标 6
22,11,33,66,55,44,88
第二趟:找出最大值66,下标3,从[1,5]中找 ; 最后一个下标 5
22,11,33,44,55,66,88
第三趟:找出最大值55,下标4,从[1,4]中找; 最后一个下标 4
22,11,33,44,55,66,88
第四趟:找出最大值44,下标3,从[1,3]中找 ; 最后一个下标3
22,11,33,44,55,66,88
第五趟:找出最大值33,下标2,从[1,2]中找 ; 最后一个下标2
22,11,33,44,55,66,88
第六趟:找出最大值22,下标0,从[1,1]中找 ; 最后一个下标1
11,22,33,44,55,66,88
最多换位置:n-1
冒泡需要 元素 换位置
8,7,6,5,4,3
7,6,5,4,3,8 第一轮5 + 4 + 3 + 2 = 14
list = [22,11,33,66,88,55,44]for i in range(0,len(list)):#找出最大值t = list[0]#假设第一个最大index = 0 #最大值的索引for j in range(1,len(list)-i):if(list[j]>t):t = list[j]index = j#把最大值放到后面last = len(list)-1-i #最后的一个值的下标list[index] = list[last]list[last] = tprint(list)
1.4折半查找
有10个鸡蛋,有一个坏的(重一些),给你天平。称几次
5 5
2 2
1 1
2元组(tuple) ()
2.1定义
tuple1 = ("zsf",18,"武当","武当")
2.2取值
print(tuple1[0])#取出元组中第一个元素的值print(tuple1.index(18))#找出18的索引下标
print(tuple1.index("武当"))#找出武当的索引下标
2.3统计计数
print(len(tuple1)) #元素的个数4print(tuple1.count("武当")) #2
2.4元组的遍历
for obj in tuple1:print(obj)
2.5格式化输出
print("名字:%s,年龄:%d,位置:%s,%s"%tuple1)
2.6特殊
2.6.1如果元组中只有一个元素的时候, 逗号 结尾
tuple1 = ("zsf",)
print(tuple[0])
2.6.2在函数中的使用
def tt():a="sf"b=2return(a,b)#如果想返回多个值,把值放到元组中tuple2 = tt()
print(tuple2[0])
3 字典
3.1字典的定义{}
字典同样可以用来 存储多个数据;通常用于存储 描述一个 物体(对象) 的相关信息
和列表的区别:列表是有序的,字典是无序
键值对 :
名字(键,key) :张三(值,value)
年龄(键,key):18(值,value)
3.2 定义
zsf_dic={"name":"zsf","age":18,"love":["小姐姐","小哥哥"]"dog":{"name":"小黑","type":"二哈","age":5}}
3.3查看字典的长度: 有 几对键值对
print(len(zsf_dic)) #4
3.4取值 取出zsf名字
name = (zsf_dic["name"])print("名字:%s"%name)
3.5取出zsf 狗
dog = zsf_dic["dog"]
3.5.1取出狗名字
print(dog["name"])
print(zsf_dic["dog"]["name"])
3.6 添加和 修改
3.6.1如果修改的键存在则是修改,替换原有的值
zsf_dic["name"] = "奥利给"
print(zsf_dic)
3.6.2如果修改的键不存在则是添加一对键值对
zsf_dic["name22"] = "奥利给"
print(zsf_dic)
3.7删除 通过键来删除
zsf_dic.pop("name")
print(zsf_dic)
3.7.1删除指定键不存在的时候会报错
zsf_dic.pop("name22")
print(zsf_dic)
3.8字典合并
a = {"name":"zsf","age":18
}
b = {"score":100,"height":180,"age":19
}
3.8.1字典合并
将b字段的所有键值对 添加 到a中,如果有重复的键,会使用b的值
a.update(b)
print(a)
print(b)
3.9字典清除
b.clear()
print(b)
3.10字典遍历
zsf_dic = {"name":"张三丰","age":108,"love":["小姐姐","灭绝师太"],"dog":{"name":"小黑","type":"藏獒","age":5}
}for k in zsf_dic: #每次循环中 变量k是对应键的值print("%s -> %s "%(k,zsf_dic[k]))
3.11字典最常用的使用
3.11.1商品管理系统:商品(sku,名字,价格,品牌)
productList = [{"sku":1,"name":"iphone 12 pro max","price":12999,"brand":"苹果"
},{"sku":2,"name":"mate 40","price":7999,"brand":"华为"
},{"sku":3,"name":"vivo r9","price":3999,"brand":"vivo"
}]
print(productList)
productList.append({"sku": 4,"name": "oppo r9","price": 3999,"brand": "oppo"
})
print(productList)
4 字符串常见操作
str1 = "hello python he"
str2 = "我的外号是'大蟒蛇'"
4.1获取字符串中的字符(char)
print(str1[1])#e
print(str2[0])#我
4.2遍历字符串所有的字符
for i in str1:print(i)
4.3字符串的长度
print(len(str1))
print(len(str2))
4.4查找 子 串出现频率
print(str1.count("l")) ##字符l出现的频率
print(str1.count("he")) ##字符l出现的频率
4.5某一个字符(子串)出现 索引(下标),找到第一个就停下来了
print(str1.index("l")) ## 从左到右边,字符l的下标
print(str1.index("he")) ## 从左到右边,字符l的下标
4.6判断相关的
a = " "
print(a.isspace()) #是否是 空白字符a = "10086"
print(a.isdecimal()) #Truea = "壹千零一"
print(a.isnumeric()) ##汉字数字
4.7查找和替换
str1 = "hello python he"
print(str1.startswith("ha")) ##判断是否以什么开头print(str1.find("python")) ##查找字符,返回下标
print(str1.find("Apython")) ##找不到,返回-1
print(str1.find("he",2)) #从下标为2的位置开始找,到结束
print(str1.find("he",2,8)) #从下标为2的位置开始找,到下标8print(str1.find("he")) #0
print(str1.rfind("he")) #13str2 = str1.replace(" ","-") ##不会改变原有的字符串,改变之后 通过返回方式给你
print(str1) #hello python he
print(str2) ##hello-python-he
2021-05-05 数组、 元组、字典、字符串常见操作相关推荐
- python基础实例-Python基础之字符串常见操作经典实例详解
本文实例讲述了Python基础之字符串常见操作.分享给大家供大家参考,具体如下: 字符串基本操作 切片 # str[beg:end] # (下标从 0 开始)从下标为beg开始算起,切取到下标为 en ...
- C#字符串常见操作总结详解
C#字符串常见操作总结详解 本篇文章是对C#中字符串的常见操作进行了详细的总结介绍,需要的朋友参考下 (1)取字符串长度 <string>.Length; (2)字符串转为比特 ...
- python字符串常见操作
字符串常见操作 如有字符串mystr = 'hello world itcast and itcastcpp',以下是常见的操作 <1>find 检测 str 是否包含在 mystr中,如 ...
- 【Python笔记】字符串常见操作
Python字符串常见操作 字符串的拼接 计算字符串的长度 截取字符串 分隔字符串 字符串的替换 字符串的检索 字符串大小写转换 去掉字符串中的空格和特殊字符 格式化字符串 字符串的拼接 字符串不允许 ...
- Python中字符串常见操作总结
Python中字符串常见操作总结: Num01–>find 检测 str 是否包含在 mystr中,如果是,返回开始的索引值:否则返回-1.也可以指定在一定的范围内.mystr.find(str ...
- python 高级变量类型(列表/元组/字典/字符串)
前言 Python 中数据类型可以分为 数字型 和 非数字型 数字型 整型 (int) 浮点型(float) 布尔型(bool) 真 True 非 0 数 -- 非零即真 假 False 0 复数型 ...
- js 数组基本知识及常见操作
开发中对于数组的操作有很多,今天就说说一些常用的对数组的操作. 数组是指有序的集合,里面的每个值叫做元素,每个元素在数组中都会有自己的脚标(index).js中的数组是弱类型,数组中的元素可以是不同的 ...
- mysql cbrt函数_基础方法或属性: 列表,元组,字典,字符串,集合及内置函数等(注:只有英文名)...
列表 list append clear copy count extend index insert pop remove reverse sort 元组 tuple count index 字典 ...
- python字典的常见操作_Python 字典(Dictionary) 基本操作
字典(Dictionary)是一种可变容器模型,且可存储任意类型对象 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 , ...
最新文章
- Linux CentOS 6+复制本地前端文件压缩包解压到服务器端指定目录
- 海思3559A上编译Valgrind源码操作步骤
- 黄聪:BackGroundWorker解决“线程间操作无效: 从不是创建控件的线程访问它” (C# VS2008)...
- oracle的后缀名,oracle表空间名字的后缀 :.ora和.dbf有什么不同?
- python 只取数值_快收藏!Python常用操作运算符,都在这了!(下)
- XCTF-高手进阶区:NaNNaNNaNNaN-Batman
- java 应用程序 gui_Java GUI应用程序关闭陷阱
- [转载] 基于LSTM的股票预测模型_python实现_超详细
- 功能引导 android,Flutter实现App功能引导页
- 玉伯的一道课后题题解(关于 IEEE 754 双精度浮点型精度损失)
- Excel常用技巧—数字和文本转换,三种方法任你选!!
- 摄影网页设计制作 简单静态HTML网页作品 WEB静态摄影网站作业成品 学生DW摄影网站模板
- Kaggle教程 机器学习中级3 分类变量
- Android音乐播放模式切换-外放、听筒、耳机
- java有参构造_java的有参构造有什么用
- 导读:生活中的设计模式——启程之前,请不要错过我
- CC2640R2F之NOTIFY发送子程序
- Pandas警告:DeprecationWarning: .ix is deprecated.(ix、loc、iloc的区别)
- 谷歌翻译不能用了,怎么办
- 微信公众号发送消息 Java