字符串
一.字符串
python 内置数据类型
-
整数 int 不可变
-
浮点数 float 不可变
-
字符串 str 不可变
-
布尔 boolean 不可变
-
复数 complex 不可变
序列:线性表-数组 链表
str 字符串 不可变
list 列表
tuple 元组
set 集合
字典
dict 字典
字符串创建方式
s1="abc"
s2=str("abc")
s3="" # 空串
如何获取字符串中的字符
s1="123456"
print(len(s1)) # len函数仅仅用于序列
# print(len(123))
print(s1[0])
print(s1[6]) # 角标越界
# 角标支持负数 表示倒数
print(s1[-1]) # 倒数第1个
print(s1[-6]) # 倒数第6个
切片 截取 获取序列的某一部分
s[start:end] [s,e)
print(s1[1:4])
print(s1[:5])
print(s1[2:])
print(s1[:])
s[start:end:step]
# 无论正序 还是 逆序
# 第一出来的放start 最后一个放end
print(s1[ : :2])
print(s1[5:1:-1])
print(s1[-5:-1:-1])
对于字符串 +
print("abc"+"abc")
print(10*"abc")
in not in 表示成员的存在性
s1="hello world"
print("hello" not in s1)
特殊的 序列可以进行比较
对于字符串而言 比较比的是字典排序
如:ACII码
s1="abc"
s2="abc"
print(s1==s2)
s1="abc"
s2="ade"
print(s1>s2)
Q:如何对字符串进行遍历?
for i in range(0,len(s1)):
print(s1[i])
特别的 对于序列而言 都可已被迭代
for c in s1:
print(c)
print(s1)
# s1[0]="A" # 原地不可更改
print(s1)
二.字符串相应的函数
测试字符串函数 用于判断字符串的特殊性
s1="123abc^*&^*^"
print(s1.isalnum()) # 是否全数字和字母
s1=" "
print(s1.isalpha()) # 是否全字母
print(s1.isdigit()) # 是否全数字
print(s1.isidentifier()) # 是否标点符号
print(s1.islower()) # 是否全小写
print(s1.isupper()) # 是否全大写
print(s1.isspace()) # 是否全空格
获取子串
s1="大桥未久.avi"
print(s1.endswith(".avi")) # 是否以结尾
print(s1.startswith("大")) # 是否以开头
print(s1.find("桥未")) # 查找s位置,是第一个字符在大字符串中出现的角标
s1="abcabcabcabcabcabcbacb"
print(s1.count("b"))
转换字符串 事先先复制一份
s1="naruto kakashi sasuke"
print(s1.capitalize()) # 字符串周字母大写
print(s1.upper()) # 转大写
print(s1.lower()) # 转小写
print(s1.title()) # 所有单词首字母大写
s1="abcABC"
print(s1.swapcase()) # 原大-小 小-大
print(s1.replace("abc","呵呵")) #替换
print(s1)
去空格 只对两边有效
s1=" a b c "
print(s1.lstrip())
print(s1.rstrip())
print(s1.strip())
格式化
s1="二楼贵宾一位"
print("["+s1.center(10)+"]")
print("["+s1.ljust(10)+"]")
print("["+s1.rjust(10)+"]")