1. 基本对象类型(python里面一切皆是对象)
(接前文)
1.4.5 制表符和换行符
添加制表符,可使用字符组合\t;中添加换行符,可使用字符组合\n。示例:
>>>print("Languages:\n\tPython\n\tJava\n\tJavaScript")
输出:
Languages:
Python
Java
JavaScript
1.4.6 常用转义符
\(在行尾时) 续行符
\\ 反斜杠符号
\' 单引号
\" 双引号
\n 换行
\t 横向制表符
\r 回车
1.4.7 字符串中包含引号处理
用单引号包含字符串时,若字符串内容中含有单引号,就会出现语法错误。可以改为双引号包含字符串,反之亦然。示例:message = "One of Python's strengths is its diverse community."
最好的方法是用转义符,如message = 'One of Python\'s strengths is its diverse community.'
1.4.8 字符串格式化
1.4.8.1 传统字符串格式化
符号 描述
%c 格式化字符及其ASCII码
%s 格式化字符串
%d 格式化整数
%u 格式化无符号整型
%o 格式化无符号八进制数
%x 格式化无符号十六进制数
%X 格式化无符号十六进制数(大写)
%f 格式化浮点数字,可指定小数点后的精度
%e 用科学计数法格式化浮点数
%E 作用同%e,用科学计数法格式化浮点数
%g %f和%e的简写
%G %f 和 %E 的简写
%p 用十六进制数格式化变量的地址
示例(Python 3.0+):
print ("我叫 %s 今年 %d 岁!" % ('小明', 10))
输出结果:我叫 小明 今年 10 岁!
符号 功能
* 定义宽度或者小数点精度
- 用做左对齐
+ 在正数前面显示加号( + )
<sp> 在正数前面显示空格
# 在八进制数前面显示零('0'),在十六进制前面显示'0x'或者'0X'(取决于用的是'x'还是'X')
0 显示的数字前面填充'0'而不是默认的空格
% '%%'输出一个单一的'%'
(var) 映射变量(字典参数)
m.n. m 是显示的最小总宽度,n 是小数点后的位数(如果可用的话)
1.4.8.2 str.format(),增强字符串格式化
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。可替代上面的格式化方式。
1.4.8.3 f-string字面量格式化字符串
f-string 是 python3.6 之后版本添加的格式化字符串语法
f-string 格式化字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去。
示例:
>>> name = 'Runoob'
>>> 'Hello %s' % name 传统格式化,输出'Hello Runoob'
>>> f'Hello {name}' f’格式化, 输出 'Hello Runoob'
>>> w = {'name': 'connie', 'age': 19}
>>> print(f'My name is {w["name"]},age is {w["age"]}')
输出 My name is connie,age is 19。用这种方式,不用再去判断使用 %s,还是 %d。
1.4.8.4 使用= 符号来拼接运算表达式与结果
Python 3.8 的版本中可以使用 = 符号来拼接运算表达式与结果
示例:
>>> x = 1
>>> print(f'{x+1=}') # Python 3.8
'x+1=2'
1.4.9 多行字符串
使用一对三个单引号进行定义。多行字符串可以使用制表符,三引号让程序员从引号和特殊字符串的泥潭里面解脱出来。一个典型的用例是,当你需要一块HTML或者SQL时,这时用字符串组合,特殊字符串转义将会非常的繁琐。
示例:
>>> para_str = """这是一个多行字符串的实例
多行字符串可以使用制表符
TAB ( \t )。
也可以使用换行符 [ \n ]。
"""
>>> para_str
'这是一个多行字符串的实例\n多行字符串可以使用制表符\nTAB ( \t )。\n也可以使用换行符 [ \n ]。\n'
多行字符串可以使用制表符
三引号让程序员从引号和特殊字符串的泥潭里面解脱出来,自始至终保持一小块字符串的格式是所谓的WYSIWYG(所见即所得)格式的。
一个典型的用例是,当你需要一块HTML或者SQL时,这时用字符串组合,特殊字符串转义将会非常的繁琐。
示例:
>>>errHTML = '''
<HTML><HEAD><TITLE>
Friends CGI Demo</TITLE></HEAD>
<BODY><H3>ERROR</H3>
<B>%s</B><P>
<FORM><INPUT TYPE=button VALUE=Back
ONCLICK="window.history.back()"></FORM>
</BODY></HTML>
'''
>>>cursor.execute('''
CREATE TABLE users (
login VARCHAR(8),
uid INTEGER,
prid INTEGER)
''')
1.4.10 原始字符串
在字符串前加’r’,定义原始字符串,字符串中的内容都是原始含义,没有转义功能。
>>>dos = r"c:\news"
>>>print(dos) #输出c:\news