Python基础刻意练习:字符串与序列

本文深入探讨了Python中字符串操作的细节,包括索引、切片、转义及格式化等,同时介绍了列表、元组、filter、lambda、map及列表推导式的应用技巧,通过实例展示了Python编程的灵活性与高效性。
摘要由CSDN通过智能技术生成

本系列定位为复习笔记,某些内容并未提及。
在此记录一些典型疑问和我在学习中的问题或经常遗忘的细节,也会添加一些觉得有意思的部分(其实就是随心所欲
内容主要使用代码进行传达

字符串

字符串的索引和切片

与列表完全相同
字符串与元组tuple一样没有内置的修改方法,是不可变的数据类型:
字符串修改:

>>> s = "ABCDEFGH"
>>> s1 = s[:4] + "123" + s[4:]
>>> s1
'ABCD123EFGH'

字符串转义

原始字符串,同时最后还要加个反斜杠的方法:

str = r'C:\Program Files\FishC\Good''\\'

字符串内置方法:

在这里插入图片描述

格式化:

>>> "{0} love {1}.{2}".format("I", "Jacky", "com")    #位置参数
'I love Jacky.com'
>>> "{a} love {b}.{c}".format(a= "I", b= "Jacky", c= "com")   #关键字参数
'I love Jacky.com'

# 使用混合参数时,位置参数必须在关键字参数之前,否则将会报错
>>> "{0} love {b}.{c}".format("I", b= "Jacky", c= "com")  
'I love Jacky.com'
>>> "{a} love {b}.{0}".format(a= "I", b= "Jacky","com")
SyntaxError: positional argument follows keyword argument

>>> "{{0}}".format("不打印")
'{0}'
>>> "{0}:{1:.2f}".format("圆周率",3.1415923653)
'圆周率:3.14'
#冒号表示格式化的开始,".2"的意思是四舍五入到保留两位小数点,而f的意思是浮点数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

序列

filter lambda map与列表推导式,3元判断符

>>> list(filter(lambda x : 1 if x%3==0  else 0,range(0,101) ))
[0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99]
>>> [x for x in range(0,101) if x%3==0]
[0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99]
>>> [x%3 for x in range(0,101) if x%3==0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
>>>list(map(lambda x:[x**2,x],range(11)))
[[0, 0], [1, 1], [4, 2], [9, 3], [16, 4], [25, 5], [36, 6], [49, 7], [64, 8], [81, 9], [100, 10]]
>>>list(zip([1,3,5,7,9],[2,4,6,8,10]))
[(1,2),(3,4),(5,6),(7,8),(9,10)]
>>>list(map(lambda x,y:[x,y],[123,1234,231,123],[123,123,342,3456143,2,25]))
[[123, 123], [1234, 123], [231, 342], [123, 3456143]]
#map()后面可以接受多个序列作为参数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值