Python基础篇06-python基本数据类型-string
############ # 字符串 ############ # 字符串是 Python 中最常用的数据类型。使用引号('或")括起来来创建字符串。 # 1、定义方式: var1 = 'Hello World!' var2 = "Hello World!" # 2、字符串截取 # 字符串的截取的语法格式:变量[头下标:尾下标] # 索引值以 0 为开始值,-1 为末尾字符。从头下标(包括索引值为头下标的字符)开始截取到尾下标(不包括索引值为尾下标的字符) var = 'abcdefghijklnm' print (var) # 输出字符串 print (var[4]) # 输出字符串第五个字符 print (var[-1]) # 输出最后一个字符 print (var[-2]) # 输出倒数第二个字符 print (var[0:-1]) # 输出第一个到最后一个(不包括最后一个)的所有字符 print (var[:4]) # 输出字符串第五个字符之前的所有字符 print (var[2:5]) # 输出从第三个开始到第五个(不包括第五个)的字符 print (var[2:]) # 输出从第三个开始的后的所有字符 print (var * 2) # 输出字符串两次 print (var + "TEST") # 连接字符串 # 3、字符串中的转义符 # Python 使用反斜杠(\)转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串 print ("abcd\ efg") # \ (在行尾时)续行符 print("abcdef\\g") # \\ 反斜杠符号 == "\" print("abcde\'f\'g") # \' 单引号 print("abcde\"f\"g") # \" 双引号 print("abcdef\bg") # \b 退格,删除\b的前一个字符 print("abcdef\000g") # \000 空 print("abcdef\ng") # \n print("abcdef\tg") # \t 横向制表符 print(r"abcde\n\t\''\"") # 字符串前面添加一个 r,表示原始字符串,原样输出 # 4、字符串运算 var3 = "hello" var4 = "python" print("var1+var2的输出结果为:", var1 + var2) # + 字符串连接 print(var1 * 2) # * 重复输出字符串 print(var1[1]) # [] 通过索引获取字符串中字符 print(var1[1:3]) # [a:b] 截取字符串中的一部分 if "h" in var1: # in 成员运算符 - 如果字符串中包含给定的字符返回 True print(" h 存在变量var1中") else: print(" h 不存在变量var1中") if "o" not in var1: # not in 成员运算符 - 如果字符串中不包含给定的字符返回 True print(" o 不存在变量var1中") else: print(" o 存在变量var1中")
name = "Pythona" print("*" * 20) print(name.center(20, "*")) # 字符串居中,总长度为20,不够则补* print("*" * 20) print(name.ljust(20,"*")) # 指定长度,原字符串靠左,不够补指定字符 print(name.rjust(20,"*")) # 指定长度,原字符串靠右,不够补指定字符 print(name.zfill(20)) # 指定长度,不够在原字符串前面补0 # 查找统计 count = name.count("a") # 统计字符串中字符串a出现的次数 print(count) index = name.index("a") # 字符串下标从0开始,查找字符串a在字符串中下标,找不到报错 print(index) find = name.find("z") # 查找a在字符串中的下标,如果找不到,返回-1 print(find) # 字符串常用方法 # name.strip() # 去掉字符串前后空白(中间空白不管),不修改原字符串,返回一个新字符串 print(" 张三 ") print(" 张三 ".strip()) # 去掉首尾空白 print(" 张三 ".lstrip()) # 去左侧空白 print(" 张三 ".rsplit()) # 去右侧空白 # 扩展-去掉字符串中间的空白 name = "Hello World" # 方式1: print(name.replace(' ', '')) # 方式2: print(''.join(name.split())) # 方式3: import re str_info = re.compile(' ') print(str_info.sub('', name)) print("张三".replace("张","李")) # 将字符串中的"张"全部替换为"李" print("我是中国人".startswith("我")) # 判断字符串是否以"我"开头 print("我是中国人".endswith("人")) # 判断字符串是否以"人"结尾 print("我是中国人".endswith("人",-1)) # 判断字符串是否以"人"结尾 起始位置最后一位,这样也能取到 print("我是中国人".endswith("人",0,5)) # 判断字符串是否以"人"结尾 从下标[0开始到下标5)结束 print("我是中国人".isdigit()) # 判断字符串是否为纯数字 print("hello world 20".isnumeric()) # 判断是否只包含数字字符 print("hello world".isalpha()) # 判断字符串是否全部为字母 print("hello world".isalnum()) # 判断字符串是否包含字母和数字,只要包含一种就返回true print("hello world".capitalize()) # 首字母大写 print("hello world".upper()) # 字符串转大写 print("HELLO WORLD".lower()) # 字符串转小写 print("hello world".split(",")) # 以指定字符分隔字符串,并返回list列表 temp_list = ["a","b","c"] print("-".join(temp_list)) # 用- 将list中每个元素连接成字符串 # 字符串模块 import string print(string.ascii_lowercase) # 获取所有小写英文字母 print(string.ascii_uppercase) # 获取所有大写英文字母 print(string.digits) # 获取所有的数字0到9 print(string.ascii_letters) # 获取所有大小写字母 print(string.punctuation) # 获取所有的特殊字符 # 字符串内建函数 name = "hello world" print(len(name)) # 获取字符串长度 name = "abcdefghi" print(max(name)) print(min(name))