Python学习(二)
5. 字符串
5.1 访问
[]访问字符串的单个字符,类c的字符数组,当从左开始数的时候,第一位数字从0开始;当从右开始数的时候,第一位的坐标从-1开始
[a:b]访问字符串的一段字符,区间为[a,b),左闭右开
>> a = "awsl"
>> print(a[-1])
l
>> print(a[-3:-1])
ws
5.2 操作
>> a = ' hello world world!!'
>> print(a.capitalize())
hello world world!!
>> print(a.lstrip())
hello world world!!
>> print(a.replace('world', 'nowcoder!'))
hello nowcoder! nowcoder!!!
>> print(a2.startswith("gy"))
True
>> print(len(a))
20
>> print("-".join(["A", "B", "C"]))
A-B-C
>> print(a.split("w"))
[' hello ', 'orld ', 'orld!!']
>> print(a.find("wor"))
7
千言万语不如一张表
函数 | 作用 |
---|---|
lstrip() | 去除左侧开端的空白符 |
rstrip() | 去除右端结尾的空白符 |
strip() | 去除两端空白符 |
capitalize() | 首字母大写 |
len() | 字符串长度 |
split("a") | 将字符串在每一个a字符处左右分开 |
find() | 字符串匹配(返回首个匹配的首字母位置) |
replace('a', 'b') | 将所有a字符串改为b字符串 |
upper() | 全部大写 |
lower() | 全部小写 |
'a'.join() | 连接字符串数组。将字符串、元组、列表中的元素以a字符(分隔符)连接生成一个新的字符串 |
5.3 格式化字符串
基本同c语言printf函数,但略有不同
print("I have a %s and %s." % (pen,pencil))
需要将要填入的元素用%()包裹起来
6. 列表
6.1 访问
同字符串用[]访问,语法基本相同
6.2 更新
添加元素
- list.append()
在列表末尾添加一个元素 - list.extend()
在列表末尾添加多个元素 - list.insert(n,a)
在列表n位置处添加a
删除元素
- list.pop()
删除最后一个元素 - del list[n]
删除n位置上的元素 - list.remove(a)
制定删除元素a - list=list[n1:n2]
切片法
连接
'+'
清空
list.clear()
6.3 操作
排序
- list.sort()
将原始列表排序(默认为字典序顺序排序),可以添加key=len改变排序方式,reverse=True改为逆序 - sorted(list)
生成新的排序好的list
查找与替换
函数名 | 作用 |
---|---|
count() | 查找元素出现次数 |
find() | 查找元素第一次出现位置 |
rfind() | 查找元素最后一次出现位置 |
replace(a,b) | 将a元素替换为b元素 |
6.4 列表推导式
举个栗子:生成一个1到10的三次方的列表
a = [m**3 for m in range(1,11)]
基本格式
variable = [out_exp_res for out_exp in input_list if out_exp == 2]
out_exp_res
: 列表生成元素表达式,可以是有返回值的函数。
for out_exp in input_list
: 迭代input_list
将out_exp
传入out_exp_res
表达式中。
if out_exp == 2
: 根据条件过滤哪些值可以。
生成数字列表还可以用range()函数,range(a,b,c),a为开始数字,b为结束数字,c为间隔