热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

详解python3中str字符串的使用方法

这篇文章主要介绍了python3中str(字符串)的使用教程,文中介绍的非常详细,对python3中各种str字符串的操作都包含这篇文章中了,需要的朋友可以参考学习,下面来一起看看吧。
这篇文章主要介绍了python3中str(字符串)的使用教程,文中介绍的非常详细,对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

以上就是详解python3中str字符串的使用方法的详细内容,更多请关注 第一PHP社区 其它相关文章!


推荐阅读
  • 本文分享了作者在使用LaTeX过程中的几点心得,涵盖了从文档编辑、代码高亮、图形绘制到3D模型展示等多个方面的内容。适合希望深入了解LaTeX高级功能的用户。 ... [详细]
  • 本文探讨了如何使用Scrapy框架构建高效的数据采集系统,以及如何通过异步处理技术提升数据存储的效率。同时,文章还介绍了针对不同网站采用的不同采集策略。 ... [详细]
  • Python网络编程:深入探讨TCP粘包问题及解决方案
    本文详细探讨了TCP协议下的粘包现象及其产生的原因,并提供了通过自定义报头解决粘包问题的具体实现方案。同时,对比了TCP与UDP协议在数据传输上的不同特性。 ... [详细]
  • 实现Win10与Linux服务器的SSH无密码登录
    本文介绍了如何在Windows 10环境下使用Git工具,通过配置SSH密钥对,实现与Linux服务器的无密码登录。主要步骤包括生成本地公钥、上传至服务器以及配置服务器端的信任关系。 ... [详细]
  • 本文将详细介绍Fuel CMS如何基于CodeIgniter框架构建,包括其单入口模式的实现方式及关键配置文件的作用。通过分析本地环境中的index.php和.htaccess文件,我们将更好地理解Fuel CMS的核心架构。 ... [详细]
  • 本文提供了一个详尽的前端开发资源列表,涵盖了从基础入门到高级应用的各个方面,包括HTML5、CSS3、JavaScript框架及库、移动开发、API接口、工具与插件等。 ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • Python3爬虫入门:pyspider的基本使用[python爬虫入门]
    Python学习网有大量免费的Python入门教程,欢迎大家来学习。本文主要通过爬取去哪儿网的旅游攻略来给大家介绍pyspid ... [详细]
  • 本文详细介绍了如何在 Ubuntu 14.04 系统上搭建仅使用 CPU 的 Caffe 深度学习框架,包括环境准备、依赖安装及编译过程。 ... [详细]
  • 最适合初学者的编程语言
    本文探讨了适合编程新手的最佳语言选择,包括Python、JavaScript等易于上手且功能强大的语言,以及如何通过有效的学习方法提高编程技能。 ... [详细]
  • 默认情况下,Git 使用 Nano 编辑器进行提交信息的编辑,但如果您更喜欢使用 Vim,可以通过简单的配置更改来实现这一变化。本文将指导您如何通过修改全局配置文件来设置 Vim 作为默认的 Git 提交编辑器。 ... [详细]
  • 本文探讨了Python类型注解使用率低下的原因,主要归结于历史背景和投资回报率(ROI)的考量。文章不仅分析了类型注解的实际效用,还回顾了Python类型注解的发展历程。 ... [详细]
  • 在Notepad++中配置Markdown语法高亮及实时预览功能
    本文详细介绍了如何在Notepad++中配置Markdown语法高亮和实时预览功能,包括必要的插件安装和设置步骤。 ... [详细]
  • 本文将详细探讨 Python 编程语言中 sys.argv 的使用方法及其重要性。通过实际案例,我们将了解如何在命令行环境中传递参数给 Python 脚本,并分析这些参数是如何被处理和使用的。 ... [详细]
  • 本文介绍了如何通过安装 sqlacodegen 和 pymysql 来根据现有的 MySQL 数据库自动生成 ORM 的模型文件(model.py)。此方法适用于需要快速搭建项目模型层的情况。 ... [详细]
author-avatar
我还是看好小棠呀
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有