一、 str类常用方法

1 upper() 字符串全变大写字母

v1 = "ab"
value = v1.upper()
print(v1,value)

注意对字符串使用upper()方法,新创建了一个对象,需要新创建一个变量value接收,不改变其本身的字符串

ab AB

2 lower() 字符串全变大写字母

v1 = "aBEx"
value = v1.lower()
print(v1,value)
aBEx abex

3 capitalize() 首字母变大写

v1 = "abEx"
value = v1.capitalize()
print(v1,value)
abEx Abex

4 strip() 去除首尾空格,注意不会去掉中间的空格

v1 = "  asd fasdf "
value = v1.strip()
print(v1)
print(value)#实例:
name = input("请输入用户名:")
value = name.strip()
if value == 'abex':print('登录成功')
  asd fasdf
asd fasdf
请输入用户名:    abex              #输入前面有空格填充
登录成功

5 lstrip() 只去掉左边空格,使用方法同strip()
6 rstrip() 只去掉右边空格

7 replace(old, new[, max]) 替换指定字符

参数
old – 将被替换的子字符串。
new – 新字符串,用于替换old子字符串。
max – 可选字符串, 替换不超过 max 次

v1 = "SCII第一次以规范标准的型态以规范标准的型态以规范标准的型态"
value = v1.replace("标准","**")                  #全部替换
print(value)
value = v1.replace("标准","**",2)                #替换前2个该字符
print(value)
SCII第一次以规范**的型态以规范**的型态以规范**的型态
SCII第一次以规范**的型态以规范**的型态以规范标准的型态

8 split(str="", num=string.count(str)) 分割

参数
str – 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
num – 分割次数。默认为 -1, 即分隔所有。

v1 = "SCII第一次以规范标准的型态以规范标准的型态以规范标准的型态"
value = v1.split('标准') # 列表类型
print(value)
value = v1.split('标准',2) # 列表类型,根据前两个进行分割
print(value)
['SCII第一次以规范', '的型态以规范', '的型态以规范', '的型态']
['SCII第一次以规范', '的型态以规范', '的型态以规范标准的型态']

9 splitlines() 按照换行符进行分割

content = "middle\napi\nDisk"
v = content.split('\n')
print(v)
v = content.splitlines()
print(v)
['middle', 'api', 'Disk']
['middle', 'api', 'Disk']

10 partition() 与split()相似,但是保留了分割符
,而且只能分割成两部分

content = "5+9+2"
v = content.split("+")
print(v)
v = content.partition("+")
print(v)
v = content.rpartition("+")
print(v)
['5', '9', '2']
('5', '+', '9+2')
('5+9', '+', '2')

对于rpartition()即是从右边开始分割

11 isdecimal() 判断当前字符串中是否全部都是数字

v = "123a"
val = v.isdecimal()
print(val)
False

12 encode() 在python3中,字符串默认是unicode编码,使用该函数将字符串转换为相应的编码的字节对象

a = "abex".encode('gbk')
str1='还好'
b=str1.encode('utf-8')
print(a)
print(b)
b'abex'
b'\xe8\xbf\x98\xe5\xa5\xbd'

13 find() 返回匹配字符开始位置的索引,找不到该字符时返回-1

name = 'alexaelx'val = name.find("ex")
print(val)
val = name.find("fffff")
print(val)if name.find('ex') != -1:print('找到了')
2
-1
找到了

14 index() 与find()用法相同,只是当找不到指定字符时会报错

name = 'alexaelx'
val = name.index("ff")
print(val)
Traceback (most recent call last):File "D:/BaiduYunDownload/python 学习/day6上午所有/day6/2.数据类型.py", line 97, in <module>val = name.index("ff")
ValueError: substring not found

15 format() 字符串格式化,除了%d,%s的形式,在python中该可以用format()进行格式化
一共4种用法和1种format_map()用法

name = "我叫{0},年龄{1}-{0}-{0}"
val = name.format('海娇',45)
print(val)name = "我叫{0},年龄{1}-{0}-{0}"
val = name.format(*['海角',45])               #注意format接收列表为参数时,需要改成可变参数
print(val)v = input('>>>')
name = "我叫{name},年龄{age}"
val = name.format(name=v,age=18)
print(val)name = "我叫{name},年龄{age}"
dic = {'name':'海角','age':18}
val = name.format(**dic)                      #注意参数加**
print(val)name = "我叫{name},年龄{age}"
val = name.format_map({'name':'海角','age':18})         #format_map()只接收字典类型作为参数
print(val)
我叫海娇,年龄45-海娇-海娇
我叫海角,年龄45-海角-海角
>>>yanzgi
我叫yanzgi,年龄18
我叫海角,年龄18
我叫海角,年龄18

16 判断字符串为数字的方法扩展

name = '二十'
print(name.isdecimal()) # 123
print(name.isdigit())   # 123  ②
print(name.isnumeric()) # 123  ② 二十
False
False
True

17 join() 将字符串按指定的字符拼接起来

v = "_".join(['1','2','3'])
print(v)
v = "".join(['1','2','3'])
print(v)
1_2_3
123

18 其他一些方法
(1)maketrans与translate,把字母替换为指定的序号

table = str.maketrans("aeiou",'12345')
msg = "asdefasdfjasdifw[kmnakjudfasdf"
val = msg.translate(table)
print(val)
1sd2f1sdfj1sd3fw[kmn1kj5df1sdf

(2)swapcase() 字母大小写互换

name = 'alEx'
print(name.swapcase())
ALeX

(3)isidentifier()
(4)title() istitle()
(5)isalpha() 判断是否是字母,注意中文也算字母
(6)isalnum() 判断是否是数字,字母,字母+数字

二 str类中公共方法(list,tuple,dict类中也有下面方法)

  1. 计算当前字符串长度
v = "徐芳名sdf"
value = len(v)
print(value)
  1. 根据“索引”“下标”取值(只能取值,不能根据索引改值)
v = "ASCII第一次以规范标准的型态发"
value = v[0]
print(value)v = "ASCII第一次以规范标准的型态发"
value = v[0:5] # 0 1 2 3 4
value = v[4:5] #  4
value = v[4:-1] #  4
value = v[4:] #  4
print(value)v = "ASCII第一次以规范标准的型态发"
value = v[1:15:3]
print(value)v = "ASCII第一次以规范标准的型态发"
le = len(v) - 1                          #动态取最后1个  或v[-1]
value = v[le]
print(value)
  1. 循环,将str对象中每个元素循环(可迭代对象)
v = "ASCII第一次以规范标准的型态发"
for i in v:print(i)

【Python3】中str方法汇总相关推荐

  1. python2与python3性能对比_对Python2与Python3中__bool__方法的差异详解

    对Python2与Python3中__bool__方法的差异详解 发布时间:2020-08-28 00:08:58 来源:脚本之家 阅读:74 作者:grey_csdn 学习Python面向对象编程的 ...

  2. python3中format方法_[翻译]python3中新的字符串格式化方法-----f-string

    从python3.6开始,引入了新的字符串格式化方式,f-字符串. 这使得格式化字符串变得可读性更高,更简洁,更不容易出现错误而且速度也更快. 在本文后面,会详细介绍f-字符串的用法. 在此之前,让我 ...

  3. Python3中__call__方法介绍

    如果Python3类中有__call__方法,那么此类实例的行为类似于函数并且可以像函数一样被调用.当实例作为函数被调用时,如果定义了此方法,则x(arg1, arg2, -)是x.__call__( ...

  4. python3中format方法_python3 自定制format格式化,很多很多的内置方法。。。。。。。。。。。...

    1.哈哈哈,说实话,前面的foamat格式化并不是很懂: 举例: 1 date_format={2 "y-m-d":"{0.year}年{0.month}月{0.day} ...

  5. python3下载文件-python3 下载文件方法汇总

    学习python爬虫中,特地mark,以备忘 方法一: 使用 urllib 模块提供的 urlretrieve() 函数.urlretrieve() 方法直接将远程数据下载到本地. urlretrie ...

  6. python3中maketrans()方法的使用

    2019独角兽企业重金招聘Python工程师标准>>> static str.maketrans(x[, y[, z]]) This static method returns a ...

  7. 统计学中数据分析方法汇总

    Part1 描述统计 描述统计是通过图表或数学方法,对数据资料进行整理.分析,并对数据的分布状态.数字特征和随机变量之间关系进行估计和描述的方法.描述统计分为集中趋势分析和离中趋势分析和相关分析三大部 ...

  8. 对于毛星云opencv教程中的方法汇总

    此随笔只为记录,以备后续的回顾 一.图像的载入与显示 C++: Mat imread(const string& filename, intflags=1 ); flags >0返回一个 ...

  9. python3生成一个定长列表_range方法在Python2和Python3中的不同

    range 列表 range()方法是Python中常用的方法, 但是在Python2和Python3中使用方法不同,下面看下它们的不同使用方法. range方法详解 range(start, sto ...

最新文章

  1. Java NIO(New I/O)的三个属性position、limit、capacity
  2. 计算机虚拟网络毕业论文,计算机毕业论文——基于WEB的虚拟计算机网络实验平台.doc...
  3. 蓝桥杯 基础练习 十进制转十六进制(水题,进制转换)
  4. flask连接不到mysql数据库,即使使用了python flask mysql,也无法将数据提交到数据库(使用python flask mysql)连接.提交()...
  5. IT人员健康信号之颈椎病自疗
  6. 修改 MySQL 自增ID的起始值
  7. HTC Desire试玩手记之五(电池出叹号,充电灯不亮)
  8. ajax请求flask以后得到的响应查看
  9. 计算机在学前教育和美术绘画中的应用,幼儿园美术教学活动中信息技术的应用...
  10. BZOJ2216 [Poi2011]Lightning Conductor 【决策单调性dp】
  11. python常用的绘图库_Python3绘图库Matplotlib(01)
  12. mysql.data已拥有为,MYSQL LOAD DATA INFILE忽略重复行(自动增量作为主键)
  13. 切换计算机管理员身份,管理员身份运行,教您如何设置以管理员身份运行程序...
  14. 力扣刷题 DAY_75 贪心
  15. Git汇总--版本库操作
  16. 简单易懂的CRC校验原理阐述
  17. php json_decode gbk,,json_decode含gbk字串
  18. Matlab中使用LaTex字体
  19. c罗图片带字经典语言,20条经典的唯美的图片带字-感人的情话
  20. 乌镇大会前两天,互联网大佬演讲干货汇总

热门文章

  1. 阿翔编程学-webservice过滤器
  2. math_求和号@累乘号的性质(变界)@求和恒等式
  3. Autosar E2E功能安全算法实现
  4. Processing 安装外部库 Box2d
  5. java计算机毕业设计汽车维修服务系统源代码+数据库+系统+lw文档
  6. YX150C 纯IO口 8位OTP单片机
  7. js实现唐伯虎‘点‘秋香
  8. android报错必须64位,64位系统使用Android虚拟机问题
  9. 2017清北学堂(提高组精英班)集训笔记——基础算法
  10. SUSCTF 2022圆满落幕,SU战队夺冠