Python学习day03-字符串魔法(下)、切片、rangle等相关操作

一、字符串魔法:

(1) join() ===>重点
将字符串中的每一个字符按照指定字符拼接

str="abcdef"
str2="*".join(str)
print(str2)	#a*b*c*d*e*f

(2)字符的分割===>重点
partition(“字符”):从左开始分割,按照括号内指定字符开始分割,只分隔一次,保留分割字符
rpartition(“字符”):从右开始分割

str="HelloWorld"
print(str.partition("W"))	#('Hello', 'W', 'orld')
print(str.rpartition("o"))	#('HelloW', 'o', 'rld')

split(“字符”,“次数”):按照指定字符分割字符串,不保留分割的字符
参数2位分割的次数,如果不写,默认全部分割
split(“字符”,“次数”):从右开始分割

str="abcdabcdabcd"
print(str.split("b"))		#['a', 'cda', 'cda', 'cd']
print(str.rsplit("b",2))	#['abcda', 'cda', 'cd']

splitlines():按行分割(\n),参数为False(不保留\n)或True(保留\n),默认为不保留

str="Hello\nWorld"
print(str.splitlines())	#['Hello', 'World']
print(str.splitlines(True))	#['Hello\n', 'World']

(4) replace
字符串的替换,参数3为替换次数,可省略(全部替换)

str1="HelloWorld"
print(str1.replace("l","$",2))	#He$$oWorld

(3) title()、istitle()
title:将每个单词的首字母大写
istitle:判断每个单词是否首字母大写

str="Abc def gh"
print(str.title())	#Abc Def Gh
print(str.istitle())	#False

(4)islower、isupper
islower:判断是否全为小写
isupper:判断是否全为大写

str="ab cdef gh"
print(str.islower())	#True
print(str.isupper())	#False

(5)swapcase()
将字符串中的大写换成小写,小写换成大写

str="AbcDEf"
print(str.swapcase())	#aBCdeF

(6)isprinttable()
如果包含不可见\不可打印字符(转义字符等),则返回False

str="Hello\nWor\tld"
print(str.isprintable())	#False

(7)expandtabs()
参数,分割长度
如果字符串中有\t,则从头到后找,按照参数长度开始分割字符串,如果遇到\t,\t就作为补充,结束此次切割,开始下一次切割

str="djsc\taj\tdcjvc\tjcq\tabc"
print(str.expandtabs(6))
#djsc  aj    dcjvc jcq   abc

用途:有时可用于制作表格或指定形式的内容
在这里插入图片描述

(8)maketrans、translate
maketrans(“参数1”,“参数2”):将参数1的字符对应更改为参数2的字符
translate:通常与maketrans配合使用

str1="abcdeabcde"
str2=str.maketrans("ac","12")	#将a变为1,c变为2
print(str1.translate(str2))		#1b2de1b2de

二、字符串的切片

str[起始下标:结束下标:步长]

str="HelloWorld"
print(str[0:5])		#Hello	从0开始,切到5
print(str[:2])		#He		从0开始,切到2
print(str[0:2:1])	#He		从0开始,切到2,步长为1
print(str[::2])		#Hlool	从0开始,切到最后,步长为2
print(str[::-2])	#drWle	反着切,切到开头,步长为2

三、字符串的其他操作及常见知识

1.字符串是不可变的,一旦创建,就不可修改
一旦修改或者拼接,形成的都是新的字符串
2.len
获取长度

str="HelloWorld"
print(len(str))	#10

3.遍历字符串:
(1)for循环:

str="HelloWorld"
for i in str:
    print(i)

(2)切片

str="HelloWorld"
print(str[:])

四、range

range(起始,终止,步长)
生成有序数,不包括终止,一般与for循环使用

num1=range(10)		#生成[0,10)的整数
num2=range(5,10)	#生成[5,10)的整数
num3=range(0,15,5)生成[5,10)的整数,步长为5
#遍历需要用到for循环
for i in num1:
    print(i)		#打印0-9

range遍历字符串

str="HelloWorld"
for i in range(len(str)):
    print(str[i])

猜你喜欢

转载自blog.csdn.net/qq_41453285/article/details/82827258