python字符串,列表,字典的常用方法

本篇内容

  1. 字符串的常用方法

  2. 列表的常用方法

  3. 字典的常用方法

  • 字符串的常用方法

center

  字符居中显示,指定字符串长度,填充指定的填充字符

string = "40kuai"
print(string.center(50,'*')) # 输入
#----------------------40kuai----------------------

count

  返回字符串中出现指定字符的个数,可选参数中解释为开始和结束符号。

string = '40kuai'
print(string.count('') # 输出
#

find,index

# 查找字符索引,如果找不到索引,index返后错误,find返回-1
sting = '40KUAI'
print(string.index('I'))
print(string.find('ASD')) #

lower,casefold

# 相同点是把大写变成小写
# lower() 只对 ASCII 也就是 'A-Z'有效,但是其它一些语言里面存在小写的情况就没办法了。文档里面举得例子是德语中'ß'的小写是'ss'
s = 'ß'
s.lower() # 'ß'
s.casefold() # 'ss'

startswith,endswith

string = 'Gee 40kuai HERHe'
print(string.startswith('Ge')) # 一个文本是否以某个或几个字符开始,结果以True或者False返回。
print(string.endswith('He')) # 一个文本是否以某个或几个字符结束,结果以True或者False返回。

expandtabs

string = '40\tkuai'
print(string.expandtabs()) # 字符串中的 tab 符号('\t')转为空格,tab 符号('\t')默认的空格数是 8。

strip

lstrip为只删除字符左边,rstrip为只删除字符右边
# 当strip()参数为空时,默认删除空白符(包括'\n', '\r',  '\t',  ' ')
# 当striip()有参数时,删除序列是只要边(开头或结尾)上的字符在删除序列内,就删除掉。
a = '123abc'
a.strip('')
# '3abc' 结果是一样的
a.strip('')
# '3abc'

其他详细请查看http://www.runoob.com/python/python-strings.html

  • 列表的常用方法

names = ["zhaoding","Wangxu","Wusong","Chenyong"]

# 增加
names.append("我是追加的")
# 输出
# ['zhaoding', 'Wangxu', 'Wusong', 'Chenyong', '我是追加的'] # 删除 del和remove效果相同
del names[0]
names.remove("zhaoding")
# 输出
# ['Wangxu', 'Wusong', 'Chenyong', '我是追加的'] # update
names[1] = "40kuai"
# 输出
# ['Wangxu', '40kuai', 'Chenyong', '我是追加的'] # select
print(names[0])
print(names[1:3])
print(names[::2])
# 输出
# ['40kuai', 'Chenyong']
# ['Wangxu', 'Chenyong']
# ['Wangxu', '40kuai', 'Chenyong', '我是追加的']

其他方法

list.append(obj)  # 在列表末尾添加新的对象
list.count(obj) # 统计某个元素在列表中出现的次数
list.extend(seq) # 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
list.index(obj) # 从列表中找出某个值第一个匹配项的索引位置
list.insert(index, obj) # 将对象插入列表
list.pop(obj=list[-1]) #移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list.remove(obj) #移除列表中某个值的第一个匹配项
list.reverse() #反向列表中元素
list.sort([func]) #对原列表进行排序
  • 字典的常用方法

#select

# print(name["1101"])  # 按照key查找,查不到会报错
# print(name.get("1101")) # 按照可以查找,查不到会返回None,或者返回给定的值
# print(name.get("1105","错误")) #add # name["1105"] = ["alex","18"] #update # name["1105"][0] = ["Alex"]
# print(name) # delete
# name.pop( )
# del name["1101"]

字典的其他方法

radiansdict.clear()  # 删除字典内所有元素
radiansdict.copy() # 返回一个字典的浅复制
radiansdict.fromkeys() # 创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
radiansdict.get(key, default=None) #返回指定键的值,如果值不在字典中返回default值
radiansdict.has_key(key) #如果键在字典dict里返回true,否则返回false
radiansdict.items() # 以列表返回可遍历的(键, 值) 元组数组
radiansdict.keys() #以列表返回一个字典所有的键
radiansdict.setdefault(key, default=None) #和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
radiansdict.update(dict2) # 把字典dict2的键/值对更新到dict里
radiansdict.values() # 以列表返回字典中的所有值
上一篇:Regular Expression Matching,regex,正则表达式匹配,利用动态规划


下一篇:正则表达式(Regular Expression, RegEx)学习入门