定义:字符串是Python中最常用的数据类型,我们可以使用引号(' or ")来创建字符串。
如下方式分配一个值即创建字符串完毕:
#!/usr/bin/python3
var1 = 'continue to leart python3'
print('var1=',var1,'的数据类型为',type(var1))
var2 = "所谓喜欢而变得快乐,正是如此,也会痛苦"
print('var12',var2,'的数据类型为',type(var2))
![]()
1.访问Python字符串的值
python 不支持单字符类型,单字符类型在python中也是作为字符串使用。
访问python字符串可以用[],从“首位索引起为0开始,从末尾起为-1”来截取字符串中的一部分,遵循左闭右开原则,str[0:2] 是不包含第 3 个字符的。
#!/usr/bin/python3
var1 = 'continue to leart python3'
print('var1=',var1,'的数据类型\
为',type(var1))
var2 = "所谓喜欢而变得快乐,正是如此,也会痛苦"
print('var12',var2,'的数据类型为',type(var2))
print('反斜杠在输出中表示斜杠\\')
print(len(var1))
print(var1[:])
print(var1[1])
print(var2[10:])

2.python 可以截取一段字符串与其它字符串进行拼接。
#!/usr/bin/python3
var1 = 'continue to leart python3'
print('var1=',var1,'的数据类型\
为',type(var1))
var2 = "所谓喜欢而变得快乐,正是如此,也会痛苦"
print('var12',var2,'的数据类型为',type(var2))
print('反斜杠在输出中表示斜杠\\')
print(var1,'已经变更:',var1[:12:]+'learn')
print(var1,'已经变更:',var1[:12:]+'take'+var1[-8:])
var3 = var1[:12:] + 'take' + var1[-8:]
print(var3)

3.字符串格式化
python支持格式化字符串输出
#!/usr/bin/python3
var1 = '我叫 %s 今年 %d 岁!'
print(var1%('bigmom',400))#疑似通过%后跟进参数
test1 = ('克劳德',22)
print(var1%test1)
var2 = '我叫 %s 今年 %d 岁,身份ID:%u'
test2 = ('蒂法·洛克哈特',17,3132342342356)
print(var2%test2)

| 符号 | 描述 |
| %c | 格式化字符及其ASCII码 |
| %s | 格式化字符串 |
| %d | 格式化整数 |
| %u | 格式化无符号整型 |
| %o | 格式化无符号八进制数 |
| %x | 格式化无符号十六进制数 |
| %X | 格式化无符号十六进制数(大写) |
| %f | 格式化浮点数字,可指定小数点后的精度 |
| %e | 用科学计数法格式化浮点数 |
| %E | 作用同%e,用科学计数法格式化浮点数 |
| %g | %f和%e的简写 |
| %G | %f 和 %E 的简写 |
| %p | 用十六进制数格式化变量的地址 |
4. python 三引号
python三引号允许一个字符串跨多行,字符串可以包含换行符、制表符及其他字符
#!/usr/bin/python3
test_str = """尝试使用菜鸟实例
呵呵呵呵好
TAB ( \t )。
也可以使用换行符 [ \n ]
"""
print(test_str)

5.python 转义字符
5.1 \ (在行未时) 表示续行符
#!/usr/bin/python3 # 转义字符 \ print ("line1 \ coushishi kan \ haoxiangzhende 续行了 \ 嘚儿驾“" )
5.2 \\ 反斜杠 ,表示一个 \
print("看看是什么\\")
5.3 \' 字符串中输出单引号
5.3 \" 字符串中输出双引号
5.4 \a 响铃 print("\a") 执行后电脑有响声。
5.5 \b 退格(Backspace)
print("hello o\b world")
5.6 \000 空
5.7 \n换行
#!/usr/bin/python3 print("hello \n world")
5.8 \v 纵向制表符
#!/usr/bin/python3 print("hello \v world")
5.9 \t 横向制表符
#!/usr/bin/python3 print("hello \t world")
5.10 \r 回车,将\r后的内容移到字符串开头,并逐一替换开头的部分字符,直至将\r后面的内容完全替换完成。
#!/usr/bin/python3 print("hello \r world") print("hello\rworld!") print("hellohehehehe\rworld!")
5.11 \f 换页
#!/usr/bin/python3 print("hello \f world") print("hello\fworld!") print("hellohehehehe\fworld!")
5.12 \yyy 八进制数,y代表0~7的字符 ,例如\012代表换行
#!/usr/bin/python3 print("\110\145\154\154\157\40\127\157\162\154\144\41")
5.13 \xyy 十六进制数,以\x开头,y代表的字符,例如 \x0a代表换行
#!/usr/bin/python3 print("\x48\x65\x6c\x6c\x6f\x20\x57\x6f\x72\x6c\x64\x21")
5.14 \other 其他字符以普通格式输出
6. f-string
f-string 是 python3.6 之后版本添加的,称之为字面量格式化字符串,是新的格式化字符串语法。之前的是%
使用f-string的优势是 不用再判断使用 %s 还是%d。
使用花括号为主体中括号来限定具体值。
#!/usr/bin/python3
name = 'test'
#过去的使用方式
print("JUST %s" % name)
#现在的使用方式
print(f'JUST {name}')
print(f'1+2')
w = {'name':'bobby','weight':'800kg'}
print(f'{w["name"]}:{w["weight"]}')

而且,可以使用符号来拼接运算表达式及结果:
#!/usr/bin/python3
x = 1
print(f'{x+1}')
print(f'{x+1=}')
![]()

本文介绍了Python3中的字符串基础知识,包括如何定义和访问字符串,字符串的拼接操作,以及字符串的格式化方法。还详细讲解了Python的转义字符和f-string,特别是f-string在Python3.6后的引入,提供了更简洁的字符串格式化方式。


375

被折叠的 条评论
为什么被折叠?



