python——字符串

概述

字符串一般是用引号来创建的,可以包括数字,字母,中文,特殊字符

引号
单引号
双引号
三引号

语法

str1 = 'hello world'
str2 = "hello world"
str3 = '''hello world'''

三引号有一个区别于单双引号的作用,可以换行输出,对于一些内容很长的字符,不用做字符串拼接

str3 = '''hello world
1 '''

在这里插入图片描述

操作

操作
下标
截取
查找
修改
判断

下标

下标也可以称之为 索引,可以用来获取字符串中某个特定的数据,下标识从0开始的

#字符变量[下标]

str1 = "123avg"
str1[0]  #输出为1 

截取

你也可以说是切片,是对操作的对象截取其中一部分的操作,在字符串、列表、元组都可以使用。

语法:变量名[startIndex: endIndex : step]

  • startIndex: 开始位置下标
  • endIndex: 结束位置下标
  • step:步长,默认为1

注意:

  • 不包含结束位置下标对应的数据
  • 参数的取值可以是正负整数,如果取负数,表示逆序截取
str1 = 'hello world'
# str1[startIndex: endIndex : step]
print(str1[:4])
print(str1[2:])
print(str1[::-1])
print(str1[0:4])

在这里插入图片描述

查找

查找一般是查找子串在字符串中的位置或出现的次数

find(子串,开始位置下标,结束位置下标)

检测某个子串是否包含在这个字符串中,如果在返回这个子串开始位置的下标,否则返回-1

str1 = 'hello world'
print(str1.find("l"))  #输出2
print(str1.find("h",5)) #输出-1 这里表示从下标为5的字符串向后进行查找

index(子串,开始位置下标,结束位置下标)

检测某个子串是否包含在这个字符串中,如果在,返回开始位置的下标,否则报异常

str1 = 'hello world'
print(str1.index("l"))  #输出2
print(str1.find("h",5)) 
	# 报错,错误信息为:Traceback (most recent call last):
	 # File "/Users/python/test/pythonProject1/main.py", line 3, in <module>
	    #print(str1.index("h",5)) #输出-1
	      #    ^^^^^^^^^^^^^^^^^
	#ValueError: substring not found

rfind(子串,开始位置下标,结束位置下标)

和find()一样,查找方向从后往前,如果在返回这个子串开始位置的下标,否则返回-1

str1 = 'hello world'
print(str1.find("l"))  #输出9
print(str1.find("h",5)) #输出-1 这里表示从下标为5的字符串向前进行查找

rindex(子串,开始位置下标,结束位置下标)

和index()一样,查找方向从后往前,如果在,返回开始位置的下标,否则报异常

str1 = 'hello world'
print(str1.index("l"))  #输出2
print(str1.find("h",5)) 
	# 报错,错误信息为:Traceback (most recent call last):
	 # File "/Users/python/test/pythonProject1/main.py", line 3, in <module>
	    #print(str1.index("h",5)) #输出-1
	      #    ^^^^^^^^^^^^^^^^^
	#ValueError: substring not found

count(子串,开始位置下标,结束位置下标)

返回某个子串在字符串中出现的次数

str1 = 'hello world'
print(str1.find("l"))  #输出3
print(str1.find("h",5)) #输出0

修改

去修改已经定义的字符串中数据,字符串类型的数据修改的时候,不能改变原有字符串

replace(旧子串,新子串,替换次数)

替换次数表示替换几次

str1 = 'hello world'
print(str1.replace("l", "1", 1)) # 这里表示只替换l 一次

split(分隔字符,num)

num:表示分隔几次

str1 = 'hello world'
print(str1.split("l"))

在这里插入图片描述

join(合并的字符串)

用过一个字符或子串合并字符串

str1 = 'helloworld'
str2 = ("-").join(str1)
print(str2)

在这里插入图片描述

capitalize()

字符转换成大写

str1 = 'hello world'

print(str1.capitalize()) # Hello world

title()

字符串每个单词首字母转换成大写

str1 = 'hello world'

print(str1.title())
 #Hello World

lower()

大写转小写

str1 = 'HELLO world'

print(str1.lower())

upper()

小写转大写

str1 = 'HELLO world'

print(str1.upper())

lstrip()

删除字符串开头空白字符

str1 = '  HELLO world    '

print(str1.lstrip())

在这里插入图片描述

rstrip()

删除字符串结尾空白字符

str1 = '  HELLO world    '

print(str1.rstrip())

在这里插入图片描述

strip()

删除字符串开头结尾空白字符

str1 = '  HELLO world    '

print(str1.strip())

ljust(长度,填充字符)

返回一个原字符串左对齐,并使用指定字符天才值对应长度的新字符串

str1 = '  HELLO world    '

print(str1.ljust(30,"1"))

在这里插入图片描述

str1 = '  HELLO world    '

print(str1.ljust(30,"123"))

在这里插入图片描述
看上面两个列子,可以发现,填充的字符只能是单个字符,不能是字符串

rjust(长度,填充字符)

返回一个原字符串右对齐,并使用指定字符天才值对应长度的新字符串

center(长度,填充字符)

返回一个原字符串居中,并使用指定字符天才值对应长度的新字符串

判断

startswith(子串,开始位置下标,结束位置下标)

检查字符串是否是以指定子串开头,是返回true,否则返回false

endsswith(子串,开始位置下标,结束位置下标)

检查字符串是否是以指定子串结尾,是返回true,否则返回false

isalpha()

如果字符串至少有一个字符并且所有字符都是字母则返回true,否则false

isdigit()

如果字符串只包含数字则返回true ,否则false

isspace()

如果字符串中只包含空白,返回true,否则false

相关推荐

  1. Python字符串

    2024-04-14 21:12:03       38 阅读
  2. Python字符串

    2024-04-14 21:12:03       33 阅读
  3. Python字符串格式化

    2024-04-14 21:12:03       38 阅读
  4. Python字符串格式化练习

    2024-04-14 21:12:03       37 阅读
  5. Python 字符串前缀

    2024-04-14 21:12:03       39 阅读
  6. Python3 字符串 ----20231216

    2024-04-14 21:12:03       44 阅读
  7. Python基础-字符串

    2024-04-14 21:12:03       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-14 21:12:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-14 21:12:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-14 21:12:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-14 21:12:03       20 阅读

热门阅读

  1. 移除元素总结(十九天)

    2024-04-14 21:12:03       15 阅读
  2. 深入理解nginx的userid模块

    2024-04-14 21:12:03       14 阅读
  3. kubeadm部署kubernetes1.29

    2024-04-14 21:12:03       15 阅读
  4. AI Safety与AI Security:探索共同点和差异(上)

    2024-04-14 21:12:03       14 阅读
  5. LeetCode 119. 杨辉三角 II

    2024-04-14 21:12:03       16 阅读
  6. 设计模式: 结构型之组合模式(6)

    2024-04-14 21:12:03       12 阅读
  7. 你的期待薪资是多少

    2024-04-14 21:12:03       17 阅读