上一讲我们说到数值类的变量,这次我们讲字符串变量。代码在GitHub
字符串
字符串说明
同理,字符串变量的声明也只需要直接赋值就行,唯独不一样的就是赋值后面的数据需要加**"或者’**比如:
a = 'abc'
b = "abc"
这两个的结果是一样的,可以使用print输出看一下值和他们的类型,都是一样的:
a = 'abc'
b = "abc"
print(a) # 输出a的值
print(type(a)) # 输出a的类型
print(b) # 输出b的值
print(type(b)) # 输出b的类型
可以看到,输出的类型和值都是一样的。
注意点:
1、这边需要注意的是,赋值的时候,不允许单引号和双引号共用:
a = 'abc" # 这是错误的方式
2、字符串过长或者必要情况下需要换行的时候,不能直接换行,需要使用以下两个方法来进行处理:
错误换行:
a = "123
456" # 直接换行是错误的
方法一:
a = "123\
456" # 使用\来表示下面一行是我当前行的接续
方法二:
a = '''123
456''' # 使用三重单引号
b = """123
456""" # 使用三重双引号
以上两个方法可以使得字符串进行换行。
字符串-转义字符
所谓转义字符,就是比如我双引号本身我们是表示字符串,但是我们现在需要把双引号当作字符串来使用,比如:
我说:“你在干什么”
上面这个字符串我们在python中怎么输出呢?看以下代码:
a = "我说:"你在干什么""
直接这样吗,你会发现编译器报错,编译器认为"我说:"是一个字符串,后面的不是,这时候我们有个处理方法,告诉编译器,我们中间的"是需要当作字符输出的:
a = "我说:\"你在干什么\""
print(a)
在中间的“前面增加反斜杠,就是告诉编译器,我这个”是字符。输出结果:
反斜杠的时候例子可以看下面例子:
转义字符 | 描述 |
---|---|
\(在行尾时) | 续行符 |
\\ | 反斜杠符号 |
\’ | 单引号 |
\" | 双引号 |
\a | 响铃 |
\b | 退格(Backspace) |
\e | 转义 |
\000 | 空 |
\n | 换行 |
\v | 纵向制表符 |
\t | 横向制表符 |
\r | 回车 |
\f | 换页 |
\oyy | 八进制数 |
\xyy | 十六进制数 |
\other | 其它的字符以普通格式输出 |
所以有些在使用上大家要特别注意
字符串拼接
字符串的拼接相对简单,其实就是做简单的加法:
a = "123"
b = "456"
c = a + b
print(c)
输出结果:
就这样把字符串拼接在一起了。
字符串重复输入
重复输入比较简单,直接*你要输入的次数就行
a = "123"
a = a * 2
print(a)
输出结果就是:
字符串截取
字符串截取主要用到的方法就是[:],比如以下代码
a = "HelloWorld!" # a[n:m]的意思表示截取a字符串里面从n位置开始到m位置的所有字符
print(a[:a.__len__()]) # 输出整个字符串
print(a[:-1]) # 这边后面填写-1也表示输出整个字符串
print(a[:6]) # 表示输出从0开始到第六个字符的字符串
print(a[1:3]) #这个表示输出1-3的字符
这是输出结果:
这样表示应该很明白了。
常用方法
1、替换(replace)
# 字符串替换
a = "He-llo-W-o-rld"
a = a.replace('-','') # 把-替换成空,相当于把-去掉
print(a)
2、分割(split)
# 字符串分割
a = "He-llo-W-o-rld"
b = a.split('-') # 通过搜索-,对字符串进行分割
print(b)
print(type(b))
这边我们发现b是一个list类型,是列表,因为字符串分割之后,会有很多个元素,所以变成了列表。
3、查找(find/rfind/index/rindex)
# 字符串查找
a = "Helloword!"
b = a.find('ll') # 左边开始查找
c = a.rfind('ll') # 右边开始查找
d = a.index('ll')# 左边开始查找
e = a.rindex('ll') # 右边开始查找
print(b)
print(c)
print(d)
print(e)
输出结果为2,搜索到ll在a中出现的位置是2.
4、计算字符串出现次数(count)
# 计算字符串出现次数
a = "Helloword!"
b = a.count('ll') # ll出现的次数
c = a.count('l') # l出现的次数
d = a.count('o') # o出现的次数
print(b)
print(c)
print(d)
5、把字符串的第一个字符大写(capitalize)
6、把字符串的每个单词首字母大写(title)
7、把字符串的每个字符小写(lower)
8、把字符串的每个字符大写(upper)
# 计算字符串大小写
a = "hello word!"
print(a.capitalize())
print(a.title())
print(a.lower())
print(a.upper())
更多方法可以查看官方文档,我就不一一列举了。