Python的字符串

发布时间:2024年01月15日

一,字符串基础

基本字符串

代码如下(示例):

# 声明字符串
s0 = "双引号字符串"
print(s0)
s1 = '单引号字符串'
print(s1)
# 字符串中有引号引用
s2 = 'this is "world"'
print(s2)

三引号的引用比较特殊
一般用于一些比较特殊的字符串
三引号里面的所有内容都可以进入输出

代码如下(示例):

s3 = """
# 第一行打印一个 * ,后面带有6个空格
# 依次减二
*      
***    
*****  
*******
*****  
***    
*       
"""
print(s3)

三引号一般也用于文本注释
但是只能在程序的最前方

代码如下(示例):

"""
str()可以将任意类型转换为字符串
单引号,双引号都可以声明字符串
PEB8 规范一般一行字符不要超过120个字符
可以使用 \ 来进行换行
无论是单引号,双引号还是三引号他们的类型都是字符串类型的
"""
print(1)

1.1,转义字符

我们想要输出一个IP地址的话就需要使用转义字符

代码如下(示例):

# 转义字符 \ 会将后续内容转义
# 想要输出\ 要在前面加上一个 \
s4 = "我要输出这个地址\\\\192.168.10.55\\pubilc"
print(s4)

这样进行转义之后 \ 就仅仅是一个 \
下面使用换行符的转义来解释

代码如下(示例):

# 想要打印 \n 换行符要在前面加一个 \
s5 = "输入\\n引号"
s6 = '输入\\n引号'
print(s5, s6)

我们进行转义之后,
告诉系统 \n 是一个换行符就可以进行换行

代码如下(示例):

# \b 是删除上一个
s7 = "abcde\bfg"
print(s7)
s8 = '"lalala"'
print(s8)

二,字符串遍历

字符串之间可以使用 + 号来进行拼接
可以使用 * 进行重复输出

代码如下(示例):

s0 = "123"
s1 = "321"
s2 = s0 + s1
print(s2)
s2 *= 3
print(s2)

字符串的索引和下标是从 0 开始
超过字符串的长度会报错
长度[0, len-1]

代码如下(示例):

s3 = "1234 56789"
print(s3[0], s3[4])
# 通过索引可以找到字符串中的任意字符
s4 = input("输入字符")
print(s4, len(s4))

# 遍历
# 找到每一个字符的索引
input_str = input("输入一个字符串")
for c in range(len(input_str)):
    print(c)
# 代表索引对于i 的值
input_str = input("输入字符")
for c in range(len(input_str)):
    print(input_str[c], c)
input_str = input("输入字符")
for i in input_str:
    print(i)

例题:让用户输入一串字符串判断这串字符串是不是对称

代码如下(示例)

str1 = input("输入一串字符")
for i in range(len(str1) // 2):
    # print(i, str1[i])
    # print(len(i))
    if str1[i] != str1[len(str1)-1 - i]:
        print("不是对称")
        break
else:
    print("是对称")

三,字符串常见操作

字符串有很多常用的方法可以让我们更加方便

代码如下(示例)

# 格式化
# 按照顺序 也可以指定顺序
a = 10
b = 20
print("a={}, b={}".format(a, b))

代码如下(示例):

# 使用指定的字符串,将可迭代内容拼接(可以使用循环遍历)
print("+".join("hello world"))

代码如下(示例)

# 切割
print("dasdaw".split("s"))

代码如下(示例):

# 删除空格,也可以指定删除字符
print("   nihao   ".strip())
# 删除左边所有字符
print("***nihao***".lstrip("*"))
# 删除右边所有字符
print("***nihao***".rstrip("*"))

代码如下(示例):

# 统计字符串出现的次数 可以指定开始和结束(不包含)
print("123123123123".count("123", 5, 9))

代码如下(示例):

# 找到某一个字符串的索引 可以指定开始和结束
# 找不到返回-1
print("123123123123".find("123", 5, 9))
# 从右侧开始匹配找到该字符的索引
print("123123123123".rfind("123", 5, 12))

代码如下(示例):

# 用法同 find 找不到会报错
print("123123123123".index("123", 5, 11))
print("123123123123".rindex("123", 5, 11))

代码如下(示例):

# 判断以什么结尾
print("dawd".endswith("d"))
# 判断以什么开始
print("dadwda".startswith("da"))

代码如下(示例):

# 指定宽度多少 指定填充符号 居中
print("中国".center(20, "*"))
# 居左
print("中国".ljust(20, "*"))
# 居右
print("中国".rjust(20, "*"))
# 居右填充0
print("中国".zfill(20))

代码如下(示例):

# 编码 utf8
str1 = "中国".encode()
print(str1)
print(str1.decode())
# 解码

代码如下(示例):

# 是不是数字
print("123".isnumeric())
# 是不是字母
print("adds".isalpha())
# 是不是字母和数字 包含汉字
print("123ad".isalnum())

代码如下(示例):

# 首字母大写
print("hello world".capitalize())
# 全部大写
print("hello world".upper())
# 全部小写
print("hello WOrld".lower())
# 每个单词首字母大写
print("hello world".title())
# 大小写互换
print("hello WOrld".swapcase())
文章来源:https://blog.csdn.net/w20010114/article/details/135536897
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。