基本字符串
代码如下(示例):
# 声明字符串
s0 = "双引号字符串"
print(s0)
s1 = '单引号字符串'
print(s1)
# 字符串中有引号引用
s2 = 'this is "world"'
print(s2)
三引号的引用比较特殊
一般用于一些比较特殊的字符串
三引号里面的所有内容都可以进入输出
代码如下(示例):
s3 = """
# 第一行打印一个 * ,后面带有6个空格
# 依次减二
*
***
*****
*******
*****
***
*
"""
print(s3)
三引号一般也用于文本注释
但是只能在程序的最前方
代码如下(示例):
"""
str()可以将任意类型转换为字符串
单引号,双引号都可以声明字符串
PEB8 规范一般一行字符不要超过120个字符
可以使用 \ 来进行换行
无论是单引号,双引号还是三引号他们的类型都是字符串类型的
"""
print(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())