python3中str(字符串)的使用教程

本文主要介绍的是python3中对str(字符串)的使用操作总结,文中介绍的非常详细,需要的朋友们下面来一起看看吧。

__add__函数 (在后面追加字符串)

s1 ='Hello'
s2 = s1.__add__(' boy!')
print(s2)

#输出:Hello boy!

__contains__(判断是否包含某字符串,包含则返回True)

s1 = 'Hello'
result = s1.__contains__('He')
print(result)

#输出:True

__eq__(判断两个字符串是否相同,相同则返回True)

s1 = 'Hello'
s2 = 'How'
result = s1.__eq__(s2)
print(result)

#输出:False

__format__

#占位

__getattribute__

#占位

__getitem__

#占位

__getnewargs__

#占位

__ge__ (大于或等于)

print('b'.__ge__('a'))

#输出:True

__gt__(大于)

print('b'.__ge__('a'))

#输出:True

__hash__

#占位

__iter__

#占位

__len__(返回字符串长度)

print('abc'.__len__())

#输出:3

__le__(小于或等于)

print('b'.__le__('a'))

#输出:False

__lt__(小于)

print('b'.__lt__('a'))

#输出:False

__mod__

#占位

__mul__

#占位

__new__

#占位

__ne__

#占位

__repr__

#占位

__rmod__

#占位

__rmul__

#占位

__sizeof__

#占位

__str__(返回自已)

print('abc'.__str__())

#输出:abc

capitalize(首字母大写)

s = 'tom'
print(s.capitalize())

#输出:Tom

casefold(大写转换成小写)

s = 'TOM'
print(s.casefold())

#输出:tom

center (指定长度和填充字符,内容居中,填充字符留空则为空格)

s = 'Tom'
print(s.center(20,'-'))

#输出:--------Tom---------

count(计算某个字符串出现的个数,第二个参数:起始位置,第三个参数:结束位置)

s = 'aabbbcccccdd'
print(s.count('cc',3,11))

#输出:2

encode(编码)

s = "中文"
print(s.encode('gbk'))

#输出:b'\xd6\xd0\xce\xc4'

endswith(判断字符串是否以某个字符或字符串结尾的,第二个参数:起始位置,第三个参数:结束位置)

s = 'Projects'
print(s.endswith('ts'))
print(s.endswith('e',0,5))

#输出:True
# True

expandtabs(把1个tab键转换成7个空格)

s = 'H\ti'
print(s.expandtabs())

#输出:H i

find(查找某个字符或字符串的索引位置,第二个参数:起始位置,第三个参数:结束位置)

s = 'Hello'
print(s.find('o'))
print(s.find('o',0,3)) #找不到返回-1

#输出:4
# -1

format(字符串格式化/拼接)

name = 'Tom'
age = 18
s = '{0}\'s age is {1}'.format(name,age)
print(s)

#或者

str = '{name}\'s age is {age}'
result = str.format(age=18,name='Tom')
print(result)

#输出:Tom's age is 18

format_map

#占位

index(查找某个字符或字符串的索引位置,和find不一样是,如果字符不存在,会报错)

s = 'Hello'
print(s.index('o'))
print(s.index('e',0,3))

#输出:4
# 1

isalnum(是否为字母或数字)

s = '!#'
print(s.isalnum())

#输出:False

isalpha(是否为字母)

s = '123'
print(s.isalpha())

#输出:False

isdecimal(是否为十进制数)

s = '123'
print(s.isdecimal())

#输出:True

#True: Unicode数字,,全角数字(双字节)
#False: 罗马数字,汉字数字
#Error: byte数字(单字节)

isdigit(是否为数字)

s = '123'
print(s.isdigit())

#输出:True

#True: Unicode数字,byte数字(单字节),全角数字(双字节),罗马数字
#False: 汉字数字

isidentifier(是否为标识符/变量名)

s = '1num'
print(s.isidentifier())

#输出:False
#因为变量名不能以数字开头

islower(是否全部为小写字母)

s = 'Hello'
print(s.islower())

#输出:False

isnumeric(是否为数字)

s = '123'
print(s.isnumeric())

#输出:True

#True: Unicode数字,全角数字(双字节),罗马数字,汉字数字

isprintable(是否为可打印字符/能否原样输出)

s = '\n'
print(s.isprintable())

#输出:False

isspace(是否为空格)

print(' '.isspace())
print('\t'.isspace())

#输出:True
# True

istitle(是否为标题/每个单词首字母大写)

print('Hello Boy'.istitle())
print('hello boy'.istitle())

#输出:True
# False

isupper(是否全部为大写字母)

print('BOY'.isupper())
print('Boy'.isupper())

#输出:True
# False

join(将序列中的元素以指定的字符连接生成一个新的字符串)

s = ['H','e','l','l','o']
print(''.join(s))
print('-'.join(s))

#输出:Hello
# H-e-l-l-o

ljust(指定长度和填充字符,内容左对齐,填充字符留空则为空格)

s = 'Hello'
print(s.ljust(10,'-'))

#输出:Hello-----

lower(字符串全部换成小写)

s = 'TOM'
print(s.lower())

#输出:tom

lstrip(移除字符串左侧指定的字符,默认为空格)

s = ' Tom'
print(s.lstrip())

#输出:Tom

maketrans(创建字符映射的转换表,配合translate函数使用)

intab = "abcde"
outtab = "12345"
trantab = str.maketrans(intab, outtab)

str = "Hello abc"
print (str.translate(trantab))

#输出:H5llo 123

partition( 指定分隔符,将字符串进行分割)

s = 'IamTom'
print(s.partition('am'))

#输出:('I', 'am', 'Tom')

replace(把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。)

s = 'Tom'
print(s.replace('m','o'))

#输出:Too

rfind(从右边查找指定字符串出现的位置,如果没有匹配项则返回-1)

s = 'one two one'
print(s.rfind('one'))
print(s.rfind('one',0,6)) #指定起始和结束位置

#输出:8
#  0

rindex(从右边查找指定字符串出现的位置,如果没有匹配项则报错)

s = 'one two one'
print(s.rindex('one'))
print(s.rindex('one',0,6)) #指定起始和结束位置

#输出:8
#  0

rjust(指定长度和填充字符,内容右对齐,填充字符留空则为空格)

s = 'Hello'
print(s.rjust(10,'-'))

#输出:-----Hello

rpartition( 指定分隔符,从右边开始将字符串进行分割)

s = 'IamTom_IamTom'
print(s.rpartition('am'))

#输出:('IamTom_I', 'am', 'Tom')

rsplit(指定分隔符对字符串进行切片,如果指定第二个参数num,则只分隔num次,最后返回一个列表)

s = 'a b c d'
print(s.rsplit())
print(s.rsplit(' ',2)) #从右边开始,按空格分隔两次

#输出:['a', 'b', 'c', 'd']
#  ['a b', 'c', 'd']

rstrip(删除字符串末尾的指定字符,默认为空格)

s = '!!! I am Tom !!!'
print(s.rstrip('!'))

#输出:!!! I am Tom

split(指定分隔符对字符串进行切片,如果指定第二个参数num,则只分隔num次,最后返回一个列表)

s = 'a b c d'
print(s.split())
print(s.split(' ',2)) #从左边开始,按空格分隔两次

#输出:['a', 'b', 'c', 'd']
# ['a', 'b', 'c d']

splitlines(按换行符来分隔字符串,返回一个列表)

s = 'a\nb\nc'
print(s.splitlines()) #默认参数为False
print(s.splitlines(True)) #指定Ture参数,则保留换行符

#输出:['a', 'b', 'c']
#  ['a\n', 'b\n', 'c']

startswith(判断字符串是否以某个字符或字符串开头的,第二个参数:起始位置,第三个参数:结束位置)

s = 'Projects'
print(s.startswith('Pr'))
print(s.startswith('e',4,8))

#输出:True
#  True

strip(删除字符串前后的指定字符,默认为空格)

s = '!!! I am Tom !!!'
print(s.strip('!'))

#输出: I am Tom

swapcase(大小写互换)

s = 'I am Tom'
print(s.swapcase())

#输出:i AM tOM

title(转换成标题,就是每个单词首字母大写)

s = 'i am tom'
print(s.title())

#输出:I Am Tom

translate(根据maketrans方法创建的表,进行字符替换)

intab = "abcde"
outtab = "12345"
trantab = str.maketrans(intab, outtab)

str = "Hello abc"
print (str.translate(trantab))

#输出:H5llo 123

upper(小写转换成大写)

s = 'Hello'
print(s.upper())

#输出:HELLO

zfill(指定字符串的长度。原字符串右对齐,前面填充0)

s = 'Hello'
print(s.zfill(10))

# 输出:00000Hello

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对我们的支持。

(0)

相关推荐

  • Python之str操作方法(详解)

    1. str.format():使用"{}"占位符格式化字符串(占位符中的索引号形式和键值对形式可以混合使用). >>> string = 'python{}, django{}, tornado{}'.format(2.7, 'web', 'tornado') # 有多少个{}占位符就有多少个值与其对应,按照顺序"填"进字符串中 >>> string 'python2.7, djangoweb, tornadotornado'

  • python3 中的字符串(单引号、双引号、三引号)以及字符串与数字的运算

    python3中的字符串是一种常见的数据类型. 字符串有多种表现形式:单引号.双引号和三引号,且这些字符串的表现形式(单.双.三)都必须是成对出现的. 单.双引号是英文的:''和"",三引号则是三个单引号或者三个双引号都可以:""" """或者''' ''',在python中打出来时没有顺序之分(其实也看不出来顺序...),在一对引号的中间打上东西就是字符串,例如: #单引号# '123' '小明' 'xyz' #双引号# &

  • 详解Python3 中的字符串格式化语法

    一.旧式的字符串格式化 % 操作符 参考以下示例: >>> name = "Eric" >>> "Hello, %s." % name 'Hello, Eric.' 当有多个变量需要插入到字符串中时: >>> name = "Eric" >>> age = 74 >>> "Hello, %s. You are %s." % (name,

  • 详解Python3中setuptools、Pip安装教程

    1.安装setuptools 命令如下: wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26 tar -zxvf setuptools-19.6.tar.gz cd setuptools-19.6 python3 setup.py build python3 setup

  • 浅谈python中str字符串和unicode对象字符串的拼接问题

    str字符串 s = '中文' # s: <type 'str'> s是个str对象,中文字符串.存储方式是字节码.字节码是怎么存的: 如果这行代码在python解释器中输入&运行,那么s的格式就是解释器的编码格式: 如果这行代码是在源码文件中写入.保存然后执行,那么解释器载入代码时就将s初始化为文件指定编码(比如py文件开头那行的utf-8): unicode对象字符串 unicode是一种编码标准,具体的实现可能是utf-8,utf-16,gbk等等,这就是中文字符串和unicod

  • python3中str(字符串)的使用教程

    本文主要介绍的是python3中对str(字符串)的使用操作总结,文中介绍的非常详细,需要的朋友们下面来一起看看吧. __add__函数 (在后面追加字符串) s1 ='Hello' s2 = s1.__add__(' boy!') print(s2) #输出:Hello boy! __contains__(判断是否包含某字符串,包含则返回True) s1 = 'Hello' result = s1.__contains__('He') print(result) #输出:True __eq__

  • 在python3中使用Supervisor的详细教程

    目录 supervisor介绍 安装supervisor 设置环境变量 配置supervisor 管理一个进程 supervisor配置文件详解 启动supervisor 有时候kill进程之后需要释放连接 web界面管理 开启web访问 supervisorctl的用法 superlance介绍 Supervisord支持的Event 安装superlance superlance实战 supervisor介绍 首先,介绍一下supervisor.Supervisor(http://super

  • 再谈Python中的字符串与字符编码(推荐)

    本节内容: 1.前言 2.相关概念 3.Python中的默认编码 4.Python2与Python3中对字符串的支持 5.字符编码转换 一.前言 Python中的字符编码是个老生常谈的话题,同行们都写过很多这方面的文章.有的人云亦云,也有的写得很深入.近日看到某知名培训机构的教学视频中再次谈及此问题,讲解的还是不尽人意,所以才想写这篇文字.一方面,梳理一下相关知识,另一方面,希望给其他人些许帮助. Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编码:Python3的

  • 解决Python3中的中文字符编码的问题

    python3中str默认为Unicode的编码格式 Unicode是一32位编码格式,不适合用来传输和存储,所以必须转换成utf-8,gbk等等 所以在Python3中必须将str类型转换成bytes类型的 在Python中使用encode的方式可以进行字符的编码 实际用法: >>>a = "中国" >>> a.encode("utf-8") b'\xe4\xb8\xad\xe5\x9b\xbd' >>> a.

  • Python中的字符串类型基本知识学习教程

    如果对自然语言分类,有很多中分法,比如英语.法语.汉语等,这种分法是最常见的.在语言学里面,也有对语言的分类方法,比如什么什么语系之类的.我这里提出一种分法,这种分法尚未得到广大人民群众和研究者的广泛认同,但是,我相信那句"真理是掌握在少数人的手里",至少在这里可以用来给自己壮壮胆. 我的分法:一种是语言中的两个元素(比如两个字)拼接在一起,出来一个新的元素(比如新的字):另外一种是两个元素拼接在一起,只是得到这两个元素的并列显示.比如"好"和"人&quo

  • Python3中内置类型bytes和str用法及byte和string之间各种编码转换 问题

    Python 3最重要的新特性大概要算是对文本和二进制数据作了更为清晰的区分.文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示.Python 3不会以任意隐式的方式混用str和bytes,正是这使得两者的区分特别清晰.你不能拼接字符串和字节包,也无法在字节包里搜索字符串(反之亦然),也不能将字符串传入参数为字节包的函数(反之亦然). python3.0中怎么创建bytes型数据 bytes([1,2,3,4,5,6,7,8,9]) bytes("python"

随机推荐