当前位置: 首页 > news >正文

python-字典、集合、序列切片、字符串操作(笔记)

一、字符串常见操作(重点)

1.

2.字符串无法修改

#错误示范
str1="djskds"
str1[2]="3"

3.

str1="abcand"
# 输出3
print(str1.index("and"))

4.

str1="abcand"
newStr=str1.replace("and","sel")
print(newStr)

5.


str2="a b c d e"
print(str2.split(" "))

6.

str2=" a b c d e "
print(str2.strip())
str2="12a b c d e12"
print(str2.strip("12"))

7.

str2=" a b c d e "
print(str2.count(" "))
str2=" a b c d e "
print(len(str2))

二、序列容器切片(重点)

list=[1,2,3,4,5,6,7,8,9,10]
# 针对List进行切片 不包括4这个结尾
print(list[0:4])
# 起始留空默认从头开始 结尾留空默认到末尾
print(list[:])
# 起始留空默认从头开始 结尾留空默认到末尾(包含最后一个,也就是全部了) 但是间隔要为2
print(list[::2])
# 起始留空默认从头开始 结尾留空默认到末尾 但是间隔要为-1 这时候就是要逆着取,相当于倒序输出
print(list[::-1])
# 从三开始到1结束 不包括1 下标间隔为-1
print(list[3:1:-1])
# 逆序 下标为-2
print(list[::-2])
#输出
[1, 2, 3, 4]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[1, 3, 5, 7, 9]
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
[4, 3]
[10, 8, 6, 4, 2]

三、集合

my_set={1,1,2,3,3,3,4,5,5,5,5,5,6,7,7,8,9,9,9,9,9,10}
print(my_set)#out
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

1.

2.

#添加后,该元素的位置也是不固定的,以及添加相同的元素也会自己去重
my_set={"xxx","yyy","zzzz","aaaa"}my_set.add("dddd")print(my_set)

3.


my_set={"xxx","yyy","zzzz","aaaa"}my_set.remove("aaaa")print(my_set)

4.


my_set={"xxx","yyy","zzzz","aaaa"}print(my_set.pop())

5.

6.

my_set={"xxx","yyy","zzzz","aaaa"}my_set2={"xxx"}print(my_set.difference(my_set2))#out
{'yyy', 'aaaa', 'zzzz'}

7.

my_set={"xxx","yyy","zzzz","aaaa"}my_set2={"xxx"}print(my_set.difference_update(my_set2))
#out
{'yyy', 'aaaa', 'zzzz'}
#就是消除两个不同集合共有的

8.

my_set={"xxx","yyy","zzzz","aaaa"}my_set2={"xxx","yyy","xxx"}
print(my_set.union(my_set2))

9.去重后的长度

10.

#每次循环遍历的顺序都不一样
my_set={"xxx","yyy","zzzz","aaaa"}for x in my_set:print(x)

三、字典(重点,后端返回的json格式等数据,经常需要用到)

1.key不能重复,否则取出来的值会被覆盖

my_dick={"zs":90,"ls":80,"ww":70}
print(my_dick["zs"])

2.这个键和值都是不受限,除了key不能是字典

my_dick={"zs":{"math":30,"chinese":44,"English":50},"lssi":{"math":330,"chinese":443,"English":530},"ww":{"math":330,"chinese":434,"English":503}}
print(my_dick["zs"])
print(my_dick["zs"]["math"])
#out
{'math': 30, 'chinese': 44, 'English': 50}
30

3.

4.

my_dick={"zs":66,"lssi":77,"ww":55}
my_dick["zhaoliu"]=5
print(my_dick){'zs': 66, 'lssi': 77, 'ww': 55, 'zhaoliu': 5}

5.

my_dick={"zs":66,"lssi":77,"ww":55}
my_dick["zs"]=5
print(my_dick)
{'zs': 5, 'lssi': 77, 'ww': 55}

6.

my_dick={"zs":66,"lssi":77,"ww":55}
my_dick.pop("zs")
print(my_dick)
{'lssi': 77, 'ww': 55}

7.

my_dick={"zs":66,"lssi":77,"ww":55}print(my_dick.keys())
dict_keys(['zs', 'lssi', 'ww'])

8.遍历字典

#方法一:
my_dick={"zs":66,"lssi":77,"ww":55}
keys1=my_dick.keys()
for key in keys1:print(my_dick[key])
#方法二:直接遍历字典,然后以key名称作为临时变量,字典自己会去识别这个变量名
for key in my_dick:print(my_dick[key])
66
77
55

9.

http://www.dtcms.com/a/283814.html

相关文章:

  • cdh6.3.2的hive使用apache paimon格式只能创建不能写报错的问题
  • Thymeleaf 表单绑定与验证详解
  • Rabbitmq direct 模式与 finout区别
  • Apache Ignite 的 Pages Writes Throttling(页面写入节流)
  • C++ - 仿 RabbitMQ 实现消息队列--C++11 异步操作实现线程池
  • InfluxDB 3与Apache Parquet:打造高性能时序数据存储与分析解决方案
  • Apache DolphinScheduler介绍与部署
  • UE5 Nanite使用
  • 下班倒计时
  • 链路聚合实训
  • 管家婆价格折扣跟踪管理:查询、新增、修改、删除
  • JAVA中的Map集合
  • 【01背包】P1466 [USACO2.2] 集合 Subset Sums
  • 华为云容器产品分析
  • HTML表格基础
  • 【Linux】第一个小程序—进度条
  • HikariCP数据库连接池高性能优化实战指南
  • Spring Boot 参数校验:@Valid 与 @Validated
  • 线上协同办公时代:以开源AI大模型等工具培养网感,拥抱职业变革
  • 【前沿技术动态】【AI总结】Spring Boot 4.0 预览版深度解析:云原生时代的新里程碑
  • Fair-code介绍(Fair code)(一套新型软件模型:旨在“开源”“商业可持续性”中找到平衡)
  • Spring Boot Jackson 序列化常用配置详解
  • redis速记
  • Jenkins Git Parameter 分支不显示前缀origin/或repo/
  • 【37】MFC入门到精通——MFC中 CString 数字字符串 转 WORD ( CString, WORD/int 互转)
  • 我爱学算法之—— 前缀和(下)
  • 破局 Meme 币永续:跨界融合 Ormer + AI + 舆情监控 的颠覆性框架
  • 日志采集——ZeroMQ的配置
  • MyBatis 之配置与映射核心要点解析
  • 林曦词典|文质彬彬