位置: 编程技术 - 正文

Python 的内置字符串方法小结(Python的内置字典数据类型为___)

编辑:rootadmin

推荐整理分享Python 的内置字符串方法小结(Python的内置字典数据类型为___),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:Python的内置字典数据类型为___,python的内置字典数据类型为dict,Python的内置字典数据类型为___,Python的内置字典数据类型为___,python的内置字典数据类型为,python的内置字典数据类型,python的内置字典数据类型,python的内置字典数据类型为,内容如对您有帮助,希望把文章链接给更多的朋友!

字符串处理是非常常用的技能,但 Python 内置字符串方法太多,常常遗忘,为了便于快速参考,特地依据 Python 3.5.1 给每个内置方法写了示例并进行了归类,便于大家索引。

PS: 可以点击概览内的绿色标题进入相应分类或者通过右侧边栏文章目录快速索引相应方法。

大小写转换

str.capitalize()

将首字母转换成大写,需要注意的是如果首字没有大写形式,则返回原字符串。

'adi dog'.capitalize()# 'Adi dog'

'abcd 徐'.capitalize()# 'Abcd 徐'

'徐 abcd'.capitalize()# '徐 abcd'

'ß'.capitalize()# 'SS'

str.lower()

将字符串转换成小写,其仅对 ASCII 编码的字母有效。

'DOBI'.lower()# 'dobi'

'ß'.lower() # 'ß' 为德语小写字母,其有另一种小写 'ss', lower 方法无法转换# 'ß'

'徐 ABCD'.lower()# '徐 abcd'

str.casefold()

将字符串转换成小写,Unicode 编码中凡是有对应的小写形式的,都会转换。

'DOBI'.casefold()# 'dobi'

'ß'.casefold() #德语中小写字母 ß 等同于小写字母 ss, 其大写为 SS # 'ss'

str.swapcase()

对字符串字母的大小写进行反转。

'徐Dobi a ß'.swapcase()#: '徐dOBI A SS' 这里的 ß 被转成 SS 是一种大写但需要注意的是 s.swapcase().swapcase() == s 不一定为真:

u'xb5'# 'µ'

u'xb5'.swapcase()# 'Μ'

u'xb5'.swapcase().swapcase()# 'μ'

hex(ord(u'xb5'.swapcase().swapcase()))Out[]: '0x3bc'

这里 'Μ'(是 mu 不是 M) 的小写正好与 'μ' 的写法一致。

str.title()

将字符串中每个“单词”首字母大写。其判断“单词”的依据则是基于空格和标点,所以应对英文撇好所有格或一些英文大写的简写时,会出错。

'Hello world'.title()# 'Hello World'

'中文abc def gh'.title()# '中文Abc Def Gh'

# 但这个方法并不完美:"they're bill's friends from the UK".title()# "They'Re Bill'S Friends From The Uk"

str.upper()

将字符串所有字母变为大写,会自动忽略不可转成大写的字符。

'中文abc def gh'.upper()# '中文ABC DEF GH'需要注意的是 s.upper().isupper() 不一定为 True。

字符串格式输出

str.center(width[, fillchar])将字符串按照给定的宽度居中显示,可以给定特定的字符填充多余的长度,如果指定的长度小于字符串长度,则返回原字符串。

''.center(, '*')# '*****'

''.center()# ' 'str.ljust(width[, fillchar]); str.rjust(width[, fillchar])

返回指定长度的字符串,字符串内容居左(右)如果长度小于字符串长度,则返回原始字符串,默认填充为 ASCII 空格,可指定填充的字符串。

'dobi'.ljust()# 'dobi '

'dobi'.ljust(, '~')# 'dobi~~~~~~'

'dobi'.ljust(3, '~')# 'dobi'

'dobi'.ljust(3)# 'dobi'str.zfill(width)

用 '0' 填充字符串,并返回指定宽度的字符串。

"".zfill(5)# ''"-".zfill(5)# '-'

'dd'.zfill(5)# 'dd'

'--'.zfill(5)# '--'

' '.zfill(5)# ' '

''.zfill(5)# ''

'dddddddd'.zfill(5)# 'dddddddd'str.expandtabs(tabsize=8)用指定的空格替代横向制表符,使得相邻字符串之间的间距保持在指定的空格数以内。

tab = '1ttttt'

tab.expandtabs()# '1 '# '' 注意空格的计数与上面输出位置的关系

tab.expandtabs(4)# '1 '# '' str.format(^args, ^^kwargs)

格式化字符串的语法比较繁多,官方文档已经有比较详细的 examples,这里就不写例子了,想了解的童鞋可以直接戳这里 Format examples.

str.format_map(mapping)

类似 str.format(*args, **kwargs) ,不同的是 mapping 是一个字典对象。

People = {'name':'john', 'age':}

'My name is {name},i am {age} old'.format_map(People)# 'My name is john,i am old'

字符串搜索定位与替换

str.count(sub[, start[, end]])text = 'outer protective covering'

text.count('e')# 4

text.count('e', 5, )# 1

text.count('e', 5, )# 0str.find(sub[, start[, end]]); str.rfind(sub[, start[, end]])text = 'outer protective covering'

text.find('er')# 3

text.find('to')# -1

text.find('er', 3)Out[]: 3

text.find('er', 4)Out[]:

text.find('er', 4, )Out[]: -1

text.find('er', 4, )Out[]:

text.rfind('er')Out[]:

text.rfind('er', )Out[]:

text.rfind('er', , )Out[]: -1str.index(sub[, start[, end]]); str.rindex(sub[, start[, end]])与 find() rfind() 类似,不同的是如果找不到,就会引发 ValueError。

str.replace(old, new[, count])'dog wow wow jiao'.replace('wow', 'wang')# 'dog wang wang jiao'

'dog wow wow jiao'.replace('wow', 'wang', 1)# 'dog wang wow jiao'

'dog wow wow jiao'.replace('wow', 'wang', 0)# 'dog wow wow jiao'

'dog wow wow jiao'.replace('wow', 'wang', 2)# 'dog wang wang jiao'

'dog wow wow jiao'.replace('wow', 'wang', 3)# 'dog wang wang jiao'str.lstrip([chars]); str.rstrip([chars]); str.strip([chars])' dobi'.lstrip()# 'dobi''db.kun.ac.cn'.lstrip('dbk')# '.kun.ac.cn'

' dobi '.rstrip()# ' dobi''db.kun.ac.cn'.rstrip('acn')# 'db.kun.ac.'

' dobi '.strip()# 'dobi''db.kun.ac.cn'.strip('db.c')# 'kun.ac.cn''db.kun.ac.cn'.strip('cbd.un')# 'kun.a'static str.maketrans(x[, y[, z]]); str.translate(table)maktrans 是一个静态方法,用于生成一个对照表,以供 translate 使用。如果 maktrans 仅一个参数,则该参数必须是一个字典,字典的 key 要么是一个 Unicode 编码(一个整数),要么是一个长度为 1 的字符串,字典的 value 则可以是任意字符串、None或者 Unicode 编码。

a = 'dobi'ord('o')#

ord('a')#

hex(ord('狗'))# '0xd7'

b = {'d':'dobi', :' is ', 'b':, 'i':'ud7ud7'}table = str.maketrans(b)

a.translate(table)# 'dobi is a狗狗'

如果 maktrans 有两个参数,则两个参数形成映射,且两个字符串必须是长度相等;如果有第三个参数,则第三个参数也必须是字符串,该字符串将自动映射到 None:

a = 'dobi is a dog'

table = str.maketrans('dobi', 'alph')

a.translate(table)# 'alph hs a alg'

table = str.maketrans('dobi', 'alph', 'o')

a.translate(table)# 'aph hs a ag'

字符串的联合与分割

str.join(iterable)

用指定的字符串,连接元素为字符串的可迭代对象。

'-'.join(['', '3', ''])# '-3-'

'-'.join([, 3, ])# TypeError: sequence item 0: expected str instance, int found

'-'.join(['', '3', b'']) #bytes 为非字符串# TypeError: sequence item 2: expected str instance, bytes found

'-'.join([''])# ''

Python 的内置字符串方法小结(Python的内置字典数据类型为___)

'-'.join([])# ''

'-'.join([None])# TypeError: sequence item 0: expected str instance, NoneType found

'-'.join([''])# ''

','.join({'dobi':'dog', 'polly':'bird'})# 'dobi,polly'

','.join({'dobi':'dog', 'polly':'bird'}.values())# 'dog,bird'str.partition(sep); str.rpartition(sep)'dog wow wow jiao'.partition('wow')# ('dog ', 'wow', ' wow jiao')

'dog wow wow jiao'.partition('dog')# ('', 'dog', ' wow wow jiao')

'dog wow wow jiao'.partition('jiao')# ('dog wow wow ', 'jiao', '')

'dog wow wow jiao'.partition('ww')# ('dog wow wow jiao', '', '')

'dog wow wow jiao'.rpartition('wow')Out[]: ('dog wow ', 'wow', ' jiao')

'dog wow wow jiao'.rpartition('dog')Out[]: ('', 'dog', ' wow wow jiao')

'dog wow wow jiao'.rpartition('jiao')Out[]: ('dog wow wow ', 'jiao', '')

'dog wow wow jiao'.rpartition('ww')Out[]: ('', '', 'dog wow wow jiao')str.split(sep=None, maxsplit=-1); str.rsplit(sep=None, maxsplit=-1)'1,2,3'.split(','), '1, 2, 3'.rsplit()# (['1', '2', '3'], ['1,', '2,', '3'])

'1,2,3'.split(',', maxsplit=1), '1,2,3'.rsplit(',', maxsplit=1)# (['1', '2,3'], ['1,2', '3'])

'1 2 3'.split(), '1 2 3'.rsplit()# (['1', '2', '3'], ['1', '2', '3'])

'1 2 3'.split(maxsplit=1), '1 2 3'.rsplit(maxsplit=1)# (['1', '2 3'], ['1 2', '3'])

' 1 2 3 '.split()# ['1', '2', '3']

'1,2,,3,'.split(','), '1,2,,3,'.rsplit(',')# (['1', '2', '', '3', ''], ['1', '2', '', '3', ''])

''.split()# []''.split('a')# ['']'bcd'.split('a')# ['bcd']'bcd'.split(None)# ['bcd']str.splitlines([keepends])

字符串以行界符为分隔符拆分为列表;当 keepends 为True,拆分后保留行界符,能被识别的行界符见官方文档。

'ab cnnde fgrklrn'.splitlines()# ['ab c', '', 'de fg', 'kl']'ab cnnde fgrklrn'.splitlines(keepends=True)# ['ab cn', 'n', 'de fgr', 'klrn']

"".splitlines(), ''.split('n') #注意两者的区别# ([], [''])"One linen".splitlines()# (['One line'], ['Two lines', ''])

字符串条件判断

str.endswith(suffix[, start[, end]]); str.startswith(prefix[, start[, end]])text = 'outer protective covering'

text.endswith('ing')# True

text.endswith(('gin', 'ing'))# Truetext.endswith('ter', 2, 5)# True

text.endswith('ter', 2, 4)# False

str.isalnum()

字符串和数字的任意组合,即为真,简而言之:

只要 c.isalpha(), c.isdecimal(), c.isdigit(), c.isnumeric() 中任意一个为真,则 c.isalnum() 为真。

'dobi'.isalnum()# True

'dobi'.isalnum()# True

''.isalnum()# True

'徐'.isalnum()# True

'dobi_'.isalnum()# False

'dobi '.isalnum()# False

'%'.isalnum()# Falsestr.isalpha()Unicode 字符数据库中作为 “Letter”(这些字符一般具有 “Lm”, “Lt”, “Lu”, “Ll”, or “Lo” 等标识,不同于 Alphabetic) 的,均为真。

'dobi'.isalpha()# True

'do bi'.isalpha()# False

'dobi'.isalpha()# False

'徐'.isalpha()# Truestr.isdecimal(); str.isdigit(); str.isnumeric()三个方法的区别在于对 Unicode 通用标识的真值判断范围不同:

isdecimal: Nd,isdigit: No, Nd,isnumeric: No, Nd, Nl

digit 与 decimal 的区别在于有些数值字符串,是 digit 却非 decimal ,具体戳 这里

num = 'u'print(num)# &#;num.isdecimal(), num.isdigit(), num.isnumeric()# (False, False, True)

num = 'uB2'print(num)# ²num.isdecimal(), num.isdigit(), num.isnumeric()# (False, True, True)

num = "1" #unicodenum.isdecimal(), num.isdigit(), num.isnumeric()# (Ture, True, True)

num = "'Ⅶ'" num.isdecimal(), num.isdigit(), num.isnumeric()# (False, False, True)

num = "十"num.isdecimal(), num.isdigit(), num.isnumeric()# (False, False, True)

num = b"1" # bytenum.isdigit() # Truenum.isdecimal() # AttributeError 'bytes' object has no attribute 'isdecimal'num.isnumeric() # AttributeError 'bytes' object has no attribute 'isnumeric'str.isidentifier()

判断字符串是否可为合法的标识符。

'def'.isidentifier()# True

'with'.isidentifier()# True

'false'.isidentifier()# True

'dobi_'.isidentifier()# True

'dobi '.isidentifier()# False

''.isidentifier()# Falsestr.islower()'徐'.islower()# False

'ß'.islower() #德语大写字母# False

'a徐'.islower()# True

'ss'.islower()# True

''.islower()# False

'Ab'.islower()# False

str.isprintable()

判断字符串的所有字符都是可打印字符或字符串为空。Unicode 字符集中 “Other” “Separator” 类别的字符为不可打印的字符(但不包括 ASCII 的空格(0x))。

'dobi'.isprintable()# True

'dobin'.isprintable()Out[]: False

'dobi '.isprintable()# True

'dobi.'.isprintable()# True

''.isprintable()# True

str.isspace()

判断字符串中是否至少有一个字符,并且所有字符都是空白字符。

In []: 'rnt'.isspace()Out[]: True

In []: ''.isspace()Out[]: False

In []: ' '.isspace()Out[]: True

str.istitle()

判断字符串中的字符是否是首字母大写,其会忽视非字母字符。

'How Python Works'.istitle()# True

'How Python WORKS'.istitle()# False

'how python works'.istitle()# False

'How Python Works'.istitle()# True

' '.istitle()# False

''.istitle()# False

'A'.istitle()# True

'a'.istitle()# False

'甩甩Abc Def '.istitle()# Truestr.isupper()'徐'.isupper()# False

'DOBI'.isupper()Out[]: True

'Dobi'.isupper()# False

'DOBI'.isupper()# True

'DOBI '.isupper()# True

'DOBIt '.isupper()# True

'DOBI_'.isupper()# True

'_'.isupper()# False

字符串编码

str.encode(encoding="utf-8", errors="strict")

fname = '徐'

fname.encode('ascii')# UnicodeEncodeError: 'ascii' codec can't encode character 'u5f'...

fname.encode('ascii', 'replace')# b'&#;'

fname.encode('ascii', 'ignore')# b''

fname.encode('ascii', 'xmlcharrefreplace')# b'&#;'

fname.encode('ascii', 'backslashreplace')# b'\u5f'

学习python类方法与对象方法 本文实例针对python的类方法与对象方法进行学习研究,具体内容如下classTest_Demo:TEST='test_value'def__init__(self,name,age):self.name=nameself.age=age#staticmethod@staticmetho

Python3中的真除和Floor除法用法分析 本文实例讲述了Python3中的真除和Floor除法用法。分享给大家供大家参考,具体如下:在Python3中,除法运算有两种,一种是真除,一种是Floor除法,这两

Python保存MongoDB上的文件到本地的方法 本文实例讲述了Python保存MongoDB上的文件到本地的方法。分享给大家供大家参考,具体如下:MongoDB上的文档通过GridFS来操作,Python也可以通过pymongo连接Mo

标签: Python的内置字典数据类型为___

本文链接地址:https://www.jiuchutong.com/biancheng/384373.html 转载请保留说明!

上一篇:Python3使用requests包抓取并保存网页源码的方法

下一篇:学习python类方法与对象方法(python方法有哪些)

  • 个税申报吗
  • 应补退税额较少是什么意思
  • 多缴纳的附加税可以以后期间抵扣吗
  • 政府会计制度等式
  • 往来差异一般原因有哪些
  • 支付境外技术服务费代扣代缴所得税账务处理
  • 员工报销公司是哪个部门
  • 加盖发票专用章的是
  • 房地产企业承担的债务
  • 现金折扣不考虑增值税什么意思
  • 现金支付借款如何认定
  • 抵扣发票未申报
  • 材料收到发票未到怎么记账
  • 多收账款怎么账务处理
  • 金税盘最高限额怎么修改
  • 税收分类编码如何添加
  • 贷款利息增值税发票
  • 商砼税收政策
  • 小规模纳税人的季度
  • 小微企业免征增值税报表填写
  • 金蝶账可以修改建账日期吗
  • 清算汇缴报表填写模板
  • 工程项目处理废旧钢材怎么入账的
  • 项目工程分包账务
  • 增值税影不影响企业利润
  • 房地产车位收入做账
  • 斐讯路由器地址在哪里看
  • linux 将一个文件的内容给另一个文件
  • Mac系统中使用QuickTime Player实现屏幕录像图文教程
  • php数据库分页是怎么实现的
  • “linux系统”
  • 如何设置win10电脑开机不黑屏
  • 报销租房费用开发票
  • 在window系统中哪些用户可以查看日志
  • 商业一般纳税人辅导期截止时间
  • neoDVDstd.exe - neoDVDstd是什么进程 有什么用
  • pnp.npn
  • 工业企业制造费用核算范围
  • laravel常用命令
  • 建筑劳务公司何去何从
  • 一般纳税人销售旧货适用征收率是?
  • 外贸公司美金账户维护费用
  • 银行发行债券流程图
  • 本年利润借方红字代表什么意思
  • 预存电费余额怎么突然多了
  • 垃圾袋发票税收分类编码
  • 房产税的纳税义务人
  • 增值税发票丢失怎么补开
  • 印花税怎么交,在哪里交
  • sql数据库降低版本
  • 小规模纳税人税额怎么算
  • 库存商品是表达什么意思
  • 内账会计的岗位职责
  • 原始凭证收集
  • 在租赁公司贷款买的车绿本上会有我的名字吗
  • 票据背书转让挂什么科目
  • 建行E信通贴现需要发票吗
  • 会计学营业利润
  • 结转本年利润按什么算
  • 收到发票了填写什么单据
  • 负数发票作废后对原发票有影响吗
  • 买货物没有进项税额,如何开6个点发票
  • 企业发生装修费就计入长期待摊费用吗还是
  • 展览展示服务费计入什么科目
  • 滴滴普通发票
  • SQL Server 2005/2008 用户数据库文件默认路径和默认备份路径修改方法
  • 在Linux系统中安装MySQL
  • win10系统资源管理器怎么重新安装
  • win8怎么设置用户头像
  • windows8.1卸载软件
  • win10更新提示错误
  • div+css布局的步骤
  • android开发最全教程
  • vue设置背景图片全屏
  • dos 到指定目录
  • 基于JavaScript的图书管理系统
  • 用shell写一个脚本,对文本中无序的一列数字排序
  • hadoop运行python程序
  • Android-Canvas.drawText()详解
  • 记住密码自动登录怎么取消
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设