(1.)用引号引起来的数据
str1 = "python" str2 = 'linux' str3 = """linux windows mac""" print(type(str1),type(str2),type(str3))
(2.)原始字符串
作用:避免特殊字符串被转义,在字符串前加 r,表示 raw
file_name = r"d:\dir\logo.jpg" print(file_name)
(1.)拼接 +
str1 = "python" str2 = "linux" print(str1 + str2)
(2.) 重复 *
print("python" * 3) # python重复三次
(3.)len() 字符串长度
print(len("python"))
(4.) 判断成员关系
in 和 not in
print("py" in "python") # True print("py" not in "python") # False print("hn" in "python") # false
(5.)索引
str = "python" print(str[2]) print(str[-1])
(6.) 切片
字符串 [起始下标:终止下标]
str = "python" print(str[0:3]) print(str[1:]) # 1-最后 print(str[-2:]) # 从倒数第二位到最前面 print(str[1:4:2]) # 截取第一位到第四位,步长为2 print(str[::-1]) # 字符串翻转
字符串为不可变变量,如果需要修改字符串中的某个字符,需要通过拼接来实现。
# 错误 str = "python" str[2] = "K" # 错误,字符串不可改变 print(str) ---------------------------------- # 正确 str = "python" new_str = str[0:2]+"K"+str[3:] print(new_str)
通过dir()内置函数查看对象的操作方法
print(dir(str)) print(dir(int))
(1.) 大小写转化
data = "pYthon" print(data.capitalize) # 查看容量 print(data.upper()) # 转化为大写字符 print(data.lower()) # 转化为小写字符
(2.) 判断字符串的组成结果
print("abc".isalpha()) # 判断是否为字母 print("abc?".isalpha()) # 返回False print("123".isdigit()) # 是否为数字 print("abc123".isalnum()) # 是否为数字和字母 print("abc".islower()) # 是否为小写 print("ABC".isupper()) # 是否为大写字母
(3.) 判断字符串开头、结尾
print("python".startswith("py")) # 开头 print("python".endswith("n")) # 结尾
(4.)去除指定的字符
# 默认去除空白字符 print(" python ".strip()) print(" python ".lstrip()) -------------------------------------------- print("ApythonA".strip("A")) # 去除前后两边的字符 print("ApythonA".lstrip("A")) # 去除左侧的字符 print("ApythonA".rstrip("A")) # 去除右侧的字符
(5.) 分割字符串
#split()方法进行分割,默认以空白紫芙蓉进行分割 data = "python golang shell" print(data.split()) print(data.split()[1]) # 分割后为数组 ------------------------------------------ splitlines() # 默认以换行符进行分割 data = """python golang shell java""" print(data.splitlines())
(6.) 计数
# count()统计 data = "hello python" print(data.couont("o"))
(7.) 替换
# replace() data = "python" print(data.replace("h","M")) # 字符串替换
(8.) 字符串遍历
data = "python" for i in data: print("%s" % i)
示例:生成10的随机字符,要求包含字母、数字、特殊字符
import random import string all = string.ascii_letter + strings.digits + string.punctuation data = "" for i in range(10): data = random.choice(all) + data print(data)
示例二:统计文本行数和单词数
data = """helal asdfjl asfjl aaa aaa bbb bbb ccc dd fff""" # 统计行数 print(len(data.splitlines())) # 统计单词数 print(len(data.split()))