python列表和字符串常用操作

一、部分常用的方法
1.list()函数

a. 使用list()创建空的列表:

new_list=list()
print(new_list)
结果为:[]

b. 将字符串转换为列表:

new_list=list('python')
print(new_list)
结果为:['p', 'y', 't', 'h', 'o', 'n']

c. 将元组转化为列表:

new_tuple = ('I love Python.', 'I also love HTML.')
new_list = list(new_tuple)
print(new_list)
结果为:['I love Python.', 'I also love HTML.']

d. 将字典转化为列表:

new_dict = {'China':'Beijing', 'Russia':'Moscow'}
new_list = list(new_dict)
print(new_list)
结果为:['China', 'Russia']

转化会舍弃掉字典的值,只保留key,使用字典的方法dict.values()可以返回字典的值。

e. 将集合转化为列表:

old_set = {1, 4, 'sdf'}
new_set = list(old_set)
print(new_set)
结果为:[1, 4, 'sdf']

f. 将其他可迭代的序列转化为列表:

list1=list(range(10))
list2=list(map(int,[1.2,2.3,6.8]))
print(list1)
print(list2)
结果为:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
	  [1, 2, 6]
2.map()函数

map(function,iterable) ,对iterable代表的所有序列中的每个元素都进行function函数操作。

function函数表示对序列的操作方法

iterable表示function函数的操作对象

python 2.x返回值为列表。 python 3.x返回值为迭代器(<map object at 0x100d3d550>)

如:

def square(x):
    return x ** 2

new_list=list(map(square, list(range(5))))
print(new_list)
结果为:[0, 1, 4, 9, 16]
3.字符串常用方法
a.  string.capitalize()   无返回值。    将字符串的首字母大写

b.  string.title()    将每个单词的首字母大写,其余都小写

c.  string.join(seq)  使用string字符串将seq中的元素分隔开重新组成新的字符串

d.  string.lstrip(chars)  chars参数表示指定字符。  将string字符串左边的空格(默认)或指定字符删除

e.  string.rstrip(chars)  chars参数表示指定字符。  将string字符串右边的空格(默认)或指定字符删除

d.  string.strip(chars)  chars参数表示指定字符。  将string字符串左右两边的空格(默认)或指定字符删除

f.   string.split(str='',num)  str参数表示按照str分隔,num表示分隔的次数,如果num指定了值,则分割num+1个子字符串

g.  string.lower()    string.upper()    max(string)     min(string)

h.  string.swapcase()  反转string中的大小写字符(忽视数字)
4.list常用方法
a.  list.append(i)list列表末尾增加一个元素i

b.  list.insert(n,i)list列表索引为n之前插入一个元素i

c.  list.pop(n)   删除索引位置为n的元素并返回该元素(如果不是删除最后一个元素则需要注意删除后元素索引的变化)。不填参数n默认删除最后一个元素。

d.  list.remove(obj)    删除列表中第一个与obj相等的元素

e.  list.reverse()   将列表中的元素反向

f.   list.index(obj)  从列表中找出第一个与obj相等的元素的索引位置

g.  list.count(obj)   统计obj元素在列表中出现的次数

h.  list.extend(seq)list列表末尾增加seq列表的所有元素值,以扩展list列表
二、部分常用操作
1.list列表的减法

将两个需要做减法操作的列表转化为集合set,再进行相减。

如:

list1=['A','3','b','5','c','d']
list2=['3','c']
print(list(set(list1)-set(list2)))
结果为:['d', '5', 'A', 'b']

这里涉及到集合的减法操作,除了上面这种直接相减set1-=set2以外,还可以使用defference()函数,实现减法操作:

set3=set1.defference(set2)

至于集合的加法操作,直接使用两个集合的并集,则可以得到两个集合的所有元素。

set1={'A','b','5','c','d'}
set2={'3','c'}
set3=set1|set2
print(c)
结果为:{'A','3','b','5','c','d'}
2.忽略大小写比较字符串

通常的做法是将两个字符串全都转化为大写(upper())或者小写(lower()),然后使其相等运算布尔值。

如:

if 'Python'.lower() == 'PYThon'.lower():
        print 'true'
    else:
        print 'false'
结果为: true
3.list转str,list(str)转list(int),list(int)转list(str),list(int)转str,list(int)转int

list转str:

new_list=['p','y','t','h','o','n']
new_str=''.jion(new_list)
print(new_str)
结果为:python

list(str)转list(int):

old_list=['1','2','3','4','2','3']
new_list=list(map(int,old_list))
print(new_list)
结果为:[1, 2, 3, 4, 2, 3]

list(int)转list(str):

old_list=[1, 2, 3, 4, 2, 3]
new_list=list(map(str,old_list))
print(new_list)
结果为:['1', '2', '3', '4', '2', '3']

list(int)转str:

old_list=[1, 2, 3, 4, 2, 3]
new_list=''.join(map(str,old_list))
print(new_list)
结果为:123423

list(int)转int:

old_list=[1, 2, 3, 4, 2, 3]
a=int(''.join(list(map(str,old_list))))   #或者a= int((str(old_list)).strip("[]").replace(',',''))
print(a)
结果为:123423
4.一行输入多个数字/单词,用空格/逗号隔开
a,b=map(int,input().split())
print(a,b)
print(type(a))
结果为:1    2
      1 2
      <class 'int'>
str1,str2=map(str,input().split(','))
print(str1,str2)
print(type(str1))
结果为:love,you
      love you
      <class 'str'>
5.去除字符串中的空格

a. 使用replace()方法

str1='hello  wor ld'
str2=str1.replace(' ','')
print(str2)
结果为:helloworld

b. 使用split()方法

str1='hello  wor ld'
str2=''.join(str1.split())
print(str2)
结果为:helloworld
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yanbeide

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值