第1001次python入门——Day04

字符串的表示方式

# 在python里,可以使用一对单引号 或 双引号 或 一对三双引号 或 一对三单引号
a = 'hello'
b = "good"
c = """呵呵呵"""
d = '''嘿嘿嘿'''

# 如果字符串里面还有双引号,外面就可以使用单引号
m = '         xiaoming said:"I am xiaoming"        '
n = "I'm xiaoming'"
p = """xiaoming said:"I am xiaoming"
good   
"""

# 字符串里的转义字符 \

# \' ==> 显示一个普通的单引号
x = 'I\'m xiaoming'
y = 'hello \n world'  #\n换行,\t制表符
print(y)

z1 = 'good mor\\ning'
print(z1)

# 字符串前面加r,表示原生字符
z2 = r'good mor\ning'
print(z2)

字符串的下标和切边

# 下标又称为索引,表示第几个数据
# 可迭代对象: str  list   tuple  dict  set   range 都可以遍历
#  str list tuple 可以通过下标来获取或者操作数据


# 在计算机里,下标都是从0开始的。
word = 'zhangsan'  #字符串:一个一个的字符串在一起
# 可以通过下标来获取或者修改指定位置的数据
print(word[4])
# 注意:字符串是不可变的数据类型
# 对于字符串的任何操作,都不会改变原有的字符串!!!(replace是生成一个新的字符串,也不是更改原有字符串)
# word[4] = 'x'

# 切片就是从字符串里复制一段指定内容,生成一个新的字符串
m = 'abcdefghijklmnopqrstuvwxyz'
print(m[5]) # m[index] ==> 获取指定下标上的数据

# 切片语法  m[start:end:step]
# 包含头不包含结束,step指步长,即间隔,负数表示从右向左
print(m[2:9])  #cdefghi
print(m[2:])   #cdefghijklmnopqrstuvwxyz
print(m[:9])   #abcdefghi

# 步长默认为1,且不能为0
print(m[3:15:2])   #dfhjln
print(m[15:3:-1])   #ponmlkjihgfe
print(m[::])   #abcdefghijklmnopqrstuvwxyz
print(m[::-1])   #zyxwvutsrqponmlkjihgfedcba

# start和end如果是负数,表示从右边数
print(m[-9:-5])

字符串常见的操作

x = 'abcdefghijklmn'

# 使用内置函数len 可以获取字符串的长度
print(len(x))

# 查找内容相关的方法  find/index/rfind/rindex  可以获取指定字符的下标
print(x.find('l'))
print(x.index('l'))
# 区别
print(x.find('p'))   # 不存在结果是-1
#print(x.index('p'))   # 不存在会报错

print(x.find('l', 4, 9))

print(x.rfind('l'))
print(x.rindex('l'))


# startswith, endswith, isalpha, isdigit, isalnum, isspace
# is开头的是判断,结果是一个布尔类型
print('hello'.startswith('he'))   # True
print('hello'.endswith('o'))   #True
print('hello'.isalpha())   # True
print('hello11'.isalpha())   # False
print('good'.isdigit())  #False
print('123'.isdigit())   #True
print('hell345o'.isalnum())   #True

print('     '.isspace())

# replace方法:用来替换字符串
word = 'hello'
m = word.replace('l', 'x')   # replace 将字符串里 l 替换成 x
print(word)   # hello
print(m)

内容分割相关操作

# split rsplit splitlines partition rpartiton

# 字符串类型的数据
x = 'zhangsan-lisi-wangwu-jerry-henry-mary'
# ['zhangsan', 'lisi', 'wangwu', 'jerry', 'henry', 'mary']
# 使用split方法,可以将一个字符串切割成为一个列表
print(x.split('-')) # ['zhangsan', 'lisi', 'wangwu', 'jerry', 'henry', 'mary']

print(x.rsplit('-')) # ['zhangsan', 'lisi', 'wangwu', 'jerry', 'henry', 'mary']

print(x.split('-', 2))   # ['zhangsan', 'lisi', 'wangwu-jerry-henry-mary']
print(x.rsplit('-', 2))  # ['zhangsan-lisi-wangwu-jerry', 'henry', 'mary']


# partition  指定一个字符串作为分隔符,分为三部分
# 前面  分隔符  后面
print('abcdefXXXmpqrst'.partition('X'))   # ('abcdef', 'X', 'XXmpqrst')
print('abcdefXXXmpqrst'.rpartition('X'))   # ('abcdefXX', 'X', 'mpqrst')

猜你喜欢

转载自blog.csdn.net/Thorne_lu/article/details/114006912