Str字符串的功能介绍

2024-08-25 16:58
文章标签 介绍 功能 字符串 str

本文主要是介绍Str字符串的功能介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载自:https://www.cnblogs.com/single-boy/p/7309461.html

1. 字符串的操作

  1. 字符串的连接操作

    符号: +
    格式:str1 + str2
    例如:str1 = 'I Love'str2 = 'You!'print(str1 + str2)>>> 'I Love You!'
    返回值:str
    
  2. 字符串的复制操作

    符号: *
    格式:str * num
    例如:str = 'abc'num = 3print(str1 * num)>>> 'abcabcabc' 
    返回值:str
    
  3. 字符串的索引操作

    符号: []
    格式:str[index]
    例如:str = 'abcde'print(str[2])>>> 'c'
    返回值:str
    
  4. 字符串的切片操作

    符号: [::]
    格式:str[index:index:step]
    例如:str = 'abcdefg'print(str[:])>>> 'abcdefg'#取字符串所有内容,开头的0可以忽略print(str[:3])>>> 'abc'#取出字符串索引0-3的内容(顾头不顾尾,不包含索引3的对象)print(str[:5:2])>>> 'ace'#取出字符串索引0-5的内容,每2个索引取一次print(str[3:])>>> 'defg'#取出字符串索引3开始到结尾的内容print(str[-2:])>>> 'fg'#取出字符串倒数第2开始到结尾的内容  
    返回值:str 
    

2. 内置方法

  1. 连接

    格式:x.__add__(y)等同于x+y
    返回值:str 
    
  2. 包含

    格式:x.__contains__(y)
    返回值:bool
    
  3. 相等

    格式:x.__eq__(y)等同于x==y
    返回值:bool
    
  4. 大于等于

    格式:x.__ge__(y)等同于x>=y
    返回值:bool
    
  5. 访问属性方法(文件操作时用)

    格式:x.__getattribute__(self,name)
    返回值:tuple
    
  6. 获取键值对(字典操作时用)

    格式:x.__getitem__(key)
    返回值:键的值  
    
  7. 大于

    格式:x.__gt__(y)等同于x>y
    返回值:bool
    
  8. 哈希值

    格式:x.__hash__()
    返回值:哈希值,int类型
    
  9. 迭代器

    格式:x.__iter__()
    返回值:迭代器
    
  10. 小于等于

    格式:x.__le__(y)等同于x<=y
    返回值:bool
    
  11. 长度

    格式:x.__len__()等同于len(x)
    返回值:int类型
    
  12. 小于

    格式:x.__lt__()
    返回值:布尔类型
    
  13. 复制

    格式:x.__mul__(y)等同于x*y
    返回值:str
    

    注::此处的y必须是int类型

  14. 不等于

    格式:x.__ne__(y)等同于x!=y
    返回值:bool
    
  15. 右->左 复制

    格式:x.__rmul__(y)等同于y*x
    返回值:str
    

    注:此处的y必须是int类型

3. 常用方法

  1. 首字母大写,后面的小写

    格式:x.capitalize()#开头第一个单词首字母大写,后面的所有字符串全部小写
    例如:x = = 'i am A 好 boy'print(x.capitalize())>>> 'I am a 好 boy'
    返回值:str
    
  2. 全部字符小写

    格式:x.casefold()#字符串中所有单词的所有字母全部小写
    例如:x = = 'i am A 好 boy'print(x.casefold())>>> 'i am a 好 boy'
    返回值:str
    
  3. 居中,两边默认以空格填充

    格式:x.center()#定义字符串的长度,不足长度时,两边以指定字符串进行填充
    例如:x = 'abc'print(x.center(20,'*'))>>> '********abc*********'
    返回值:str
    
  4. 计数(默认全文计数)

    格式:x.count(str,index1,index2)#指定开始和结束范围来统计某字符串的个数
    例如:x = 'sffefwsf'print(x.count('sf'),0,8)>>> 2
    返回值:int类型
    
  5. 编码

    格式:x.encode()#指定字符串的编码格式
    例如:x.encode(encoding='utf-8')#转换为utf-8格式
    返回值:bytes
    
  6. 以什么为结尾

    格式:x.endswith(str,index1,index2)#指定字符串的开始和结束范围,判断所选区域是否是以指定字符串结尾
    例如:x = 'adfd'print(x.endswith('fd',2,3))>>> True
    返回值:bool
    
  7. 把\t转换为空格

    格式:x.expandtabs()#默认开头到\t为8个字节,不足以空格填充
    例如:x = 'i am\t A\t 好 boy'print(x.expandtabs())>>> 'i am     A       好 boy'
    返回值:str
    
  8. 查找

    格式:x.find(str,index1,index2)#指定开始和结束的范围,查找指定区域内是否由指定的字符串(只返回查找到第一个的索引值)
    例如:x = 'asdfdsfsafsaf'print(x.find('df',1,8))>>> 2
    返回值:int类型
    

    注:如果find未查找到,将返回为-1

  9. 格式化

    格式:x.format(*args)#字符串的格式化可以有参数,可以无参数,可以是索引值参数,也可以是关键字参数
    1. 无参数例如:s1 = 'I {} {} {}'   print(s1.format('love','you','!'))>>> 'I love you !'
    2. 索引参数    例如:s1 = 'I {0} {1} {0} {1}'print(s1.format('love','you'))>>> 'I love you love you'注:使用索引参数时,只能按顺序,从索引0开始
    3. 关键字参数例如:s1 = 'I {m} {n}'print(s1.format(m = 'love',n = 'you'))>>> 'I love you'
    4. 格式限定符填充常和对齐一起使用:^ < > 分别是居中,左对齐和右对齐,后面带宽度: 后面带填充的字符,只能是一个字符,默认是空格例如:无(位置)参数:s1 = 'I love you {}'print(s1.format(', very much !'))>>> 'I love you , very much !'默认居中方法:s1 = 'I love you {:^18}'print(s1.format(', very much !'))>>> 'I love you   , very much !  '指定字符居中:s1 = 'I love you {:*^18}'print(s1.format(', very much !'))>>> 'I love you **, very much !***'指定字符左对齐:s1 = 'I love you {:*<18}'print(s1.format(', very much !'))>>> 'I love you , very much !*****'指定字符右对齐:s1 = 'I love you {:*>18}' print(s1.format(', very much !'))>>> 'I love you *****, very much !'
    5. 精度与类型f例如:s1 = '圆周率大概是{}'print(s1.format(3.1415926))>>> '圆周率大概是3.1415926's1 = '圆周率大概是{:.2f}'print(s1.format(3.1415926))>>> '圆周率大概是3.14's1 = '圆周率大概是{:.2f}'print(s1.format(3.1415926))>>> '圆周率大概是3.1416'注:精度一般和浮点一起使用,取值时使用四舍五入法
    6. 进制操作主要的进制为b、d、o、x,分别是二、十、八、十六进制例如:十进制:s1 = 'The pen values {} yuan!'s1 = 'The pen values {:d} yuan!'print(s1.format(17))>>> 'The pen values 17 yuan!'二进制:s1 = 'The pen values {:b} yuan!'print(s1.format(17))>>> 'The pen values 10001 yuan!'八进制:s1 = 'The pen values {:o} yuan!'print(s1.format(17)) >>> 'The pen values 21 yuan!'十六进:s1 = 'The pen values {:x} yuan!'print(s1.format(17)) >>> 'The pen values 11 yuan!'
    7. 金融字符,千分位 即,例如:s1 = 'The phone is {}$ !'print(s1.format(10000000))>>> 'The phone is 10000000$ !'s1 = 'The phone is {:,}$ !'print(s1.format(10000000))>>> 'The phone is 10,000,000$ !'
    返回值:str
    
  10. 查找

    格式:x.index(str,index1,index2)#用法和find一样
    返回值:int
    

    注::当index未查找到,程序将报错

  11. 非符号字符串

    格式:x.isalnum()#字符串中可以有大小写,可以有数字,但不可以有符号
    返回值:bool
    
  12. 纯字母的字符串

    格式:x.isalpha()#字符串中可以有大小写,但不可以有数字和符号
    返回值:bool
    
  13. 纯数字的字符串

    格式:x.isdecimal()#字符串中只可以数字
    返回值:bool
    
  14. 纯数字的字符串

    格式:x.isdigit()#字符串中只可以数字
    返回值:bool
    
  15. 开头字母的字符串

    格式:x.isidentifier()#字符串以字母开头,可以是大小写,后面可以有数字,但数字不能开头
    返回值:bool
    
  16. 全部小写

    格式:x.islower()#字符串全部是小写,也可以有数字,数字可以开头,但不能全数字
    返回值:bool
    
  17. 包含中文数字

    格式:x.isnumeric()#字符串中可以有数字,也可以有中文大小写数字
    返回值:bool
    
  18. 可打印

    格式:x.isprintable()#打印为空,则为假
    返回值:bool
    
  19. 空格

    格式:x.isspace()#字符串中只能是空格
    返回值:bool
    
  20. 标题

    格式:x.istitle()#字符串中每个单词首字母大写
    返回值:bool
    
  21. 全部大写

    格式:x.isupper()#字符串中可以有数字,数字可以开头,但必须有大写字母
    返回值:bool
    
  22. 拼接

    格式:x.join(str)#把字符串以指定字符串进行相连
    例如:x = 'abcde'print('_'.join(x))>>> 'a_b_c_d_e'
    返回值:str
    
  23. 左对齐

    格式:x.ljust(str) #字符串左对齐,需要指定长度,不足长度时可以用指定字符串进行填充(默认以空格填充),当指定长度小于字符串长度,将会左对齐
    例如:x = 'abcde'print(x.ljust(12,'*'))>>> 'abcde*******'
    返回值:str
    
  24. 全部小写

    格式:x.lower()#字符串中所有单词,所有字母全部小写#与casefold()功能一样返回值:str
    
  25. 去除左边空格

    格式:x.lstrip()#去除对字符串左边的指定字符串,字符串中间和结尾的指定字符串不做处理,默认去除的是空格
    例如:x = 'aaafdfdfaaadfdsaaa'print(x.lstrip('a'))>>> 'fdfdfaaadfdsaaa'
    返回值:str
    
  26. 字符串进行分段

    格式:x.partition(str)#把字符串以从左到右第一个指定字符串为元素进行分段,以元组形式展现
    例如:x = 'acbadfsadfsdfsd'print(x.partition('sa'))>>> ('acbadf', 'sa', 'dfsdfsd')
    返回值:tuple
    
  27. 字符串替换

    格式:x.replace(old,new,count)#把字符串中指定的字符串替换为新字符串,默认全部替换,也可以指定替换次数,如果次数超过存在的个数,将全部替换
    例如:x = 'acbadfsadfsdfsd'print(x.replace('df','A',7))>>> 'acbaAsaAsAsd'
    返回值:str
    
  28. 右→左 查找

    格式:x.rfind(str,index1,index2)#功能同find()一样
    返回值:int
    
  29. 右→左 查找

    格式:x.rindex(str,index1,index2)#功能同index()一样
    返回值:int
    
  30. 右对齐

    格式:x.rjust(str)#字符串右对齐,需要指定长度,不足长度时可以用指定字符串进行填充(默认以空格填充),当指定长度小于字符串长度,将会右对齐
    例如:x = 'adc'print(x.rjust(6,'%'))>>> '%%%adc'
    返回值:str
    
  31. 右→左 字符串分段

    格式:x.rpartition(str)#把字符串以从右到左第一个指定字符串进行分段,以元组形式展示
    例如:x = 'abccbacbd'print(x.rpartition('cb'))>>> ('abccba', 'cb', 'd')
    返回值:tuple
    
  32. 字符串切片

    格式:x.rsplit(str)#把字符串以指定字符串进行切片,并以列表的形式展现
    例如:x = 'abccbacbd'print(x.rsplit('cb'))>>> ['abc', 'a', 'd']
    返回值:list
    
  33. 去除右边空格

    格式:x.rstrip(str)#去除字符串最右边的指定字符串,左边和中间的指定字符串不做处理,默认去除的是空格
    例如:x = 'aaafdfdfaaadfdsaaa'print(x.rstrip('a'))>>> 'aaafdfdfaaadfds'
    返回值:str
    
  34. 切片

    格式:x.split()#把字符串以指定字符串进行切片,并以列表的形式展现#功能同rsplit()一样
    返回值:list
    
  35. 换行符分段

    格式:x.splitlines()#把字符串以换行符进行切片,并以列表的形式展现
    返回值:list
    
  36. 以什么为开头

    格式:x.startswith(str,index1,index2)#指定字符串的开始和结束范围,判断指定区域是否是以指定字符串开头
    例如:x = 'adafsdaf'print(x.startswith('da',1,8))>>> True
    返回值:bool
    
  37. 去除两边空格

    格式:x.strip(str)#去除字符串两边的指定字符串,中间的指定字符串不做处理,默认去除的是空格
    例如:x = 'aaadfsaaafdsfaaa'print(x.strip())>>> 'dfsaaafdsf'
    返回值:str
    
  38. 大小写互转

    格式:x.swapcase()#字符串中所有的字母进行大小写相互转换
    例如:x = 'aBcdE'print(x.swapcase())>>> 'AbCDe'
    返回值:str
    
  39. 标题化

    格式:x.title()#对字符串中所有单词首字母大写,单词中间的大写全部转换为小写
    例如:x = 'asd faDSdsf sdf'print(x.title())>>> 'Asd Fadsdsf Sdf'
    返回值:str
    
  40. 全部变大写

    格式:x.upper()#字符串中所有字母全部转换为大写
    例如:x = 'DFdgDdfdg'print(x.upper())>>> 'DFDGDDFDG'
    返回值:str
    
  41. 左对齐,零填充

    格式:x.zfill()#字符串左对齐,指定字符串长度,不足部分以0填充
    例如:x = 'afd'print(x.zfill(5))>>> '00afd'
    返回值:str
    
  42. 映射函数

    x.maketrans(*args)#把两个字符串进行一一对应,两个字符串长度必须一致
    格式:str.maketrans(str1,str2)bytearray.maketrans(str1,str2)bytes.maketrans(str1,str2)
    返回值:dict
    
  43. 映射函数

    x.translate(*args)#把maketrans()得到的映射表应用出来
    格式:x.translate(str.maketrans(str1,str2))
    返回值:str

这篇关于Str字符串的功能介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1106123

相关文章

Java实现文件图片的预览和下载功能

《Java实现文件图片的预览和下载功能》这篇文章主要为大家详细介绍了如何使用Java实现文件图片的预览和下载功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... Java实现文件(图片)的预览和下载 @ApiOperation("访问文件") @GetMapping("

C#数据结构之字符串(string)详解

《C#数据结构之字符串(string)详解》:本文主要介绍C#数据结构之字符串(string),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录转义字符序列字符串的创建字符串的声明null字符串与空字符串重复单字符字符串的构造字符串的属性和常用方法属性常用方法总结摘

Java实现时间与字符串互相转换详解

《Java实现时间与字符串互相转换详解》这篇文章主要为大家详细介绍了Java中实现时间与字符串互相转换的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、日期格式化为字符串(一)使用预定义格式(二)自定义格式二、字符串解析为日期(一)解析ISO格式字符串(二)解析自定义

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

SpringIntegration消息路由之Router的条件路由与过滤功能

《SpringIntegration消息路由之Router的条件路由与过滤功能》本文详细介绍了Router的基础概念、条件路由实现、基于消息头的路由、动态路由与路由表、消息过滤与选择性路由以及错误处理... 目录引言一、Router基础概念二、条件路由实现三、基于消息头的路由四、动态路由与路由表五、消息过滤

Spring Boot 3.4.3 基于 Spring WebFlux 实现 SSE 功能(代码示例)

《SpringBoot3.4.3基于SpringWebFlux实现SSE功能(代码示例)》SpringBoot3.4.3结合SpringWebFlux实现SSE功能,为实时数据推送提供... 目录1. SSE 简介1.1 什么是 SSE?1.2 SSE 的优点1.3 适用场景2. Spring WebFlu

基于SpringBoot实现文件秒传功能

《基于SpringBoot实现文件秒传功能》在开发Web应用时,文件上传是一个常见需求,然而,当用户需要上传大文件或相同文件多次时,会造成带宽浪费和服务器存储冗余,此时可以使用文件秒传技术通过识别重复... 目录前言文件秒传原理代码实现1. 创建项目基础结构2. 创建上传存储代码3. 创建Result类4.

Python+PyQt5实现多屏幕协同播放功能

《Python+PyQt5实现多屏幕协同播放功能》在现代会议展示、数字广告、展览展示等场景中,多屏幕协同播放已成为刚需,下面我们就来看看如何利用Python和PyQt5开发一套功能强大的跨屏播控系统吧... 目录一、项目概述:突破传统播放限制二、核心技术解析2.1 多屏管理机制2.2 播放引擎设计2.3 专

一文详解SpringBoot响应压缩功能的配置与优化

《一文详解SpringBoot响应压缩功能的配置与优化》SpringBoot的响应压缩功能基于智能协商机制,需同时满足很多条件,本文主要为大家详细介绍了SpringBoot响应压缩功能的配置与优化,需... 目录一、核心工作机制1.1 自动协商触发条件1.2 压缩处理流程二、配置方案详解2.1 基础YAML

MySQL中慢SQL优化的不同方式介绍

《MySQL中慢SQL优化的不同方式介绍》慢SQL的优化,主要从两个方面考虑,SQL语句本身的优化,以及数据库设计的优化,下面小编就来给大家介绍一下有哪些方式可以优化慢SQL吧... 目录避免不必要的列分页优化索引优化JOIN 的优化排序优化UNION 优化慢 SQL 的优化,主要从两个方面考虑,SQL 语