字符串和列表的常用函数和方法

学习目标:

掌握字符串和列表的常用函数和方法


学习内容:

1.字符串常用函数,方法

字母处理:

.uper() 全部大写
.lower() 全部小写
.swapcase 大小写互换
.capitalize 首字母大写,其余小写
.title 首字母大写

字符串搜索相关

.find() 搜索指定字符串,没有返回-1
.index() 同上,但是找不到会报错
.rfind() 从右边开始查找
.count() 统计指定的字符串出现的次数

字符串替换

.replace('old,‘new’) 替换old为new
.replace(‘old’,‘new’,次数) 替换指定次数的old为new

a='你好,老师,老师,老师'
print(a.replace('老师','妹妹'))
打印结果:你好,妹妹,妹妹,妹妹
a='你好,老师,老师,老师'
print(a.replace('老师','妹妹',2))
打印结果:你好,妹妹,妹妹,老师

字符串去空格及去指定字符

.

.strip() 去两边空格
.lstrip() 去左边空格
.rstrip() 去右边空格

.split() 默认按空格分隔

a='你好 老师老师老师'
print(a.split())
打印结果:['你好', '老师老师老师']

.split(‘指定字符’) 分割字符串为数组

a='你好#老师老师老师'
print(a.split('#'))
打印结果:['你好', '老师老师老师']

字符串判断相关

.startswith(‘start’) # 是否以start开头
.endswith(‘end’) # 是否以end结尾
.isalnum() # 是否全为字母或数字
.isalpha() # 是否全字母 .isdigit() # 是否全数字
.islower() # 是否全小写
.isupper() # 是否全大写
.istitle() # 判断首字母是否为大写
.isspace() # 判断字符是否为空格

补充

bin() # 十进制数转八进制
hex() # 十进制数转十六进制
range() # 函数:可以生成一个整数序列
type() # 查看数据类型
len() # 计算字符串长度
format() #格式化字符串,类似%s,传递值能多不能少

2.列表的常用函数,方法

.append() 可以往list中追加元素到末尾:

list1=['asd',12,23,45]
list1.append('add')
print(list1)
打印结果:['asd', 12, 23, 45, 'add']

.insert() 把元素插入到指定的位置

list1=['asd',12,23,45]
list1.insert(1,'insert')
print(list1)
打印结果:['asd', 'insert', 12, 23, 45]

.pop() 删除list末尾的元素

list1=['asd',12,23,45]
list1.pop()
print(list1)
打印结果:['asd', 12, 23]

要删除指定位置的元素,用pop(i)方法,其中i是索引位置:

list1=['asd',12,23,45]
list1.pop(1)
print(list1)
打印结果:['asd', 23, 45]

.extend()扩展列表(相当于把list1的元素复制到了list)

list=[172,25,78,98]
list1=['asd',12,23,45]
list1.extend(list)
print(list1)
打印结果:['asd', 12, 23, 45, 172, 25, 78, 98]

.remove()删除匹配项(移除列表中某个值的第一个匹配项(只会移出第一个)

list1=['asd',12,23,45,12]
list1.remove(12)
print(list1)
打印结果:['asd', 23, 45, 12]

.copy复制列表(复制一个副本,原值和新复制的变量互不影响)

list1=['asd',12,23,45,12]
list=list1.copy()
print(list)
打印结果:['asd', 12, 23, 45, 12]

.reverse()反向排序

list1=['asd',12,23,45,12]
list1.reverse()
print(list1)
打印结果:[12, 45, 23, 12, 'asd']

.index()获取索引(从列表中找出某个值第一个匹配项的索引位置)

list1=['asd',12,23,45,12]
print(list1.index(12))
打印结果:1

.sort()排序(对原列表进行排序.根据ascii排序)

list1=[65,12,23,45,13]
list1.sort()
print(list1)
打印结果:[12, 13, 23, 45, 65]

max(list1) 返回列表元素的最大值

list1=[65,12,23,45,13]
print(max(list1))
打印结果:65

min(list1) 返回列表元素的最小值

list1=[65,12,23,45,13]
print(min(list1))
打印结果:12

len(list1) 获取列表长度

list1=[65,12,23,45,13]
print(len(list1))
打印结果:5

练习:

1.在键盘上输入数字几就打印出几个人的名字,并且名字不能有重复

import random
aa=int(input('请输入数字'))
namelist=['张三','李四','王二','李强']
for i in range(aa):
    name=random.randrange(len(namelist))
    print(namelist.pop(name))
    
打印结果:请输入数字3
王二
李强
张三

2.把字符串里的内容反转显示

s='dsdrtrhgdrgtt'
for i in range(-1,-14,-1):
    print(s[i])
 打印内容:
t
t
g
r
d
g
h
r
t
r
d
s
d


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值