python官方文档阅读整理(一)

2.2 解释器的运行环境

2.2.1 源文件的字符编码

默认情况下,python源码文件的编码是UTF-8。

3.Python速览

Python注释以#开头,直到该物理行结束。注释可以在行开头,或空白符与代码之后,但不能在字符串里面。

3.1 Python用作计算器

3.1.1 数字

运算符+,-,*,/可被用来执行算术运算;圆括号()可悲用来分组。

整数的类型是Int,带小数的类型是float。

除法运算(/)总是返回浮点数。如果要做floor division得到一个整数结果可以使用//运算符;要计算余数可以使用%。

python 复制代码
17 / 3  # 经典除法运算返回一个浮点数
5.666666666666667
>>>
>>> 17 // 3  # 向下取整除法运算会丢弃小数部分
5
>>> 17 % 3  # % 运算返回相除的余数
2
>>> 5 * 3 + 2  # 向下取整的商 * 除数 + 余数
17

Python用**运算符计算乘方

python 复制代码
5 ** 2  # 5 的平方
25
>>> 2 ** 7  # 2 的 7 次方
128

等号(=)用于给变量赋值。 赋值后,下一个交互提示符的位置不显示任何结果。

python 复制代码
width = 20
>>> height = 5 * 9
>>> width * height
900

如果变量未定义(即,未赋值 )使用该变量会提示错误:NameError: name 'n' is not defined

除了 int 和 float,Python 还支持其他数字类型,例如 Decimal 或 Fraction。Python 还内置支持 复数,后缀 j 或 J 用于表示虚数(例如 3+5j )。

3.1.2.文本

除了数字Python还可以操作文本(由str类型表示,称为"字符串")。字符串可以由成对的单引号

或双引号来表示,结果完全相同。

要标示引号本身,我们需要对它进行"转义",即在前面加一个\。或者,我们也可以使用不同的引号。

python 复制代码
'doesn\'t'  # 使用 \' 来转义单引号...
"doesn't"
>>> "doesn't"  # ...或者改用双引号
"doesn't"
>>> '"Yes," they said.'
'"Yes," they said.'
>>> "\"Yes,\" they said."
'"Yes," they said.'
>>> '"Isn\'t," they said.'
'"Isn\'t," they said.'

在Python shell中,字符串定义和输出字符串看起来可能不同。print()函数会略去标示过的引号,并打印经过转义的特殊字符,产生更为易读的输出:

python 复制代码
s = 'First line.\nSecond line.'  # \n 表示换行符
>>> s  # 不用 print(),特殊字符将包括在字符串中
'First line.\nSecond line.'
>>> print(s)  # 用 print(),特殊字符会被转写,因此 \n 将产生一个新行
First line.
Second line.

如果不希望前置\的字符转义成特殊字符,可以使用原始字符串,在引号前添加r即可。

python 复制代码
print('C:\some\name')  # 这里 \n 表示换行符!
C:\some
ame
>>> print(r'C:\some\name')  # 请注意引号前的 r
C:\some\name

字符串字面值可以跨越多行。 一种做法是使用三重引号: """...""" 或 '''...'''。 行结束符会自动包括在字符串中,但可以通过在行尾添加 \ 来避免此行为。

字符串可以用+合并,也可以用*重复:

python 复制代码
# 3 乘以 'un',再加 'ium'
>>> 3 * 'un' + 'ium'
'unununium'

相邻的两个或多个字符串面值(引号标注的字符)会自动合并:

python 复制代码
'Py' 'thon'
'Python'

拼接分隔开的长字符串时,这个功能特别实用:

python 复制代码
text = ('Put several strings within parentheses '
...         'to have them joined together.')
>>> text
'Put several strings within parentheses to have them joined together.'

这项功能只能用于两个字面值,不能用于变量或表达式:

python 复制代码
prefix = 'Py'
>>> prefix 'thon'  # 不能拼接变量和字符串字面值
  File "<stdin>", line 1
    prefix 'thon'
           ^^^^^^
SyntaxError: invalid syntax
>>> ('un' * 3) 'ium'
  File "<stdin>", line 1
    ('un' * 3) 'ium'
               ^^^^^
SyntaxError: invalid syntax

合并多个变量,或合并变量与字面值,要用+:

python 复制代码
prefix + 'thon'
'Python'

字符串支持索引(下标访问),第一个字符的索引是0.单字符没有专用的类型,就是长度为一的字符串。

python 复制代码
word = 'Python'
>>> word[0]  # 0 号位的字符
'P'
>>> word[5]  # 5 号位的字符
'n'

索引还支持负数,用负数索引时 ,从右边开始计数:

python 复制代码
word[-1]  # 最后一个字符
'n'
>>> word[-2]  # 倒数第二个字符
'o'
>>> word[-6]
'P'

注意,-0 和 0 一样,因此,负数索引从 -1 开始。

除了索引操作,还支持 切片。 索引用来获取单个字符,而 切片 允许你获取子字符串:

python 复制代码
word[0:2]  # 从 0 号位 (含) 到 2 号位 (不含) 的字符
'Py'
>>> word[2:5]  # 从 2 号位 (含) 到 5 号位 (不含) 的字符
'tho'

切片索引的默认值很有用;省略开始索引时,默认值为0,省略结束索引时, 默认为到字符串的结尾。

相关推荐
卷毛的技术笔记15 分钟前
告别硬编码!Spring AI Alibaba 实现 AI Agent 智能工具调用(Tool Calling)
java·人工智能·后端·python·spring·ai编程
编程大师哥15 分钟前
匿名函数 lambda + 高阶函数
java·python·算法
isyangli_blog17 分钟前
OpenDayLight (Carbon 版本) 启动与组件安装
开发语言·php
vb20081125 分钟前
FastAPI APIRouter
开发语言·python
Benszen26 分钟前
KVM虚拟化解决方案
开发语言·perl
会编程的土豆28 分钟前
Go 语言反射(Reflection)详解
开发语言·后端·golang
東雪木30 分钟前
多线程与并发编程 专属复习笔记
java·开发语言·笔记·java面试
adrninistrat0r35 分钟前
Java调用链MCP分析工具
java·python·ai编程
杨充1 小时前
1.3 浮点型数据设计灵魂
开发语言·python·算法
噜噜噜阿鲁~1 小时前
python学习笔记 | 11.3、面向对象高级编程-多重继承
java·开发语言