Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
programiz-zh
提交
62963f26
P
programiz-zh
项目概览
OpenDocCN
/
programiz-zh
9 个月 前同步成功
通知
0
Star
48
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
programiz-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
62963f26
编写于
7月 08, 2020
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2020-07-08 13:56:00
上级
acafce9c
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
15 addition
and
15 deletion
+15
-15
docs/py/26.md
docs/py/26.md
+1
-1
docs/py/28.md
docs/py/28.md
+2
-2
docs/py/3.md
docs/py/3.md
+1
-1
docs/py/49.md
docs/py/49.md
+8
-8
docs/py/51.md
docs/py/51.md
+3
-3
未找到文件。
docs/py/26.md
浏览文件 @
62963f26
...
...
@@ -10,7 +10,7 @@
相似的文件保存在同一目录中,例如,我们可以将所有歌曲保留在“
**音乐**
”目录中。 与此类似,Python 具有用于目录的软件包和用于文件的
[
模块
](
/python-programming/modules
)
。
随着我们的应用
程序
中包含许多模块的程序变得越来越大,我们将相似的模块放在一个程序包中,而将不同的模块放在不同的程序包中。 这使项目(程序)易于管理且概念清晰。
随着我们的应用中包含许多模块的程序变得越来越大,我们将相似的模块放在一个程序包中,而将不同的模块放在不同的程序包中。 这使项目(程序)易于管理且概念清晰。
同样,由于目录可以包含子目录和文件,因此 Python 程序包可以具有子程序包和模块。
...
...
docs/py/28.md
浏览文件 @
62963f26
...
...
@@ -173,9 +173,9 @@ print(D('1.2') * D('2.50'))
在以下情况下,我们通常使用十进制。
*
当我们
进行需要精确十进制表示的金融应用程序
时。
*
当我们
编程需要精确表示十进制的金融应用
时。
*
当我们要控制所需的精度水平时。
*
当我们想实现
小数位有效
的概念时。
*
当我们想实现
有效小数位
的概念时。
* * *
...
...
docs/py/3.md
浏览文件 @
62963f26
...
...
@@ -72,7 +72,7 @@ Running Python on the Command Line
我们可以使用任何文本编辑软件来编写 Python 脚本文件。
我们只需要将其保存为
`.py`
扩展名即可。 但是使用 IDE 可以使我们的生活更加轻松。 IDE 是一款软件,可为程序员提供有用的功能,如代码提示,语法突出显示和检查,文件浏览器等,以供应用
程序
开发。
我们只需要将其保存为
`.py`
扩展名即可。 但是使用 IDE 可以使我们的生活更加轻松。 IDE 是一款软件,可为程序员提供有用的功能,如代码提示,语法突出显示和检查,文件浏览器等,以供应用开发。
顺便说一句,当您安装 Python 时,还将安装一个名为
**IDLE**
的 IDE。 您可以使用它在计算机上运行 Python。 对于初学者来说,这是一个不错的 IDE。
...
...
docs/py/49.md
浏览文件 @
62963f26
...
...
@@ -8,7 +8,7 @@
在了解什么是闭包之前,我们必须首先了解什么是嵌套函数和非局部变量。
在另一个函数内部定义的函数称为嵌套函数。 嵌套函数可以访问
封闭
范围的变量。
在另一个函数内部定义的函数称为嵌套函数。 嵌套函数可以访问
定义
范围的变量。
在 Python 中,默认情况下,这些非局部变量是只读的,我们必须将它们明确声明为非局部变量(使用
[
`nonlocal`关键字
](
/python-programming/keyword-list#nonlocal
)
)才能进行修改。
...
...
@@ -35,7 +35,7 @@ print_msg("Hello")
Hello
```
我们可以看到嵌套
`printer()`
函数能够访问
封闭
函数的非本地
`msg`
变量。
我们可以看到嵌套
`printer()`
函数能够访问
外层
函数的非本地
`msg`
变量。
* * *
...
...
@@ -71,7 +71,7 @@ Hello
这种将某些数据(在这种情况下为
`"Hello`
)附加到代码的技术在 Python 中称为
**闭包**
。
即使变量超出范围或函数本身已从当前名称空间中删除,也将记住
封闭
范围中的该值。
即使变量超出范围或函数本身已从当前名称空间中删除,也将记住
定义
范围中的该值。
尝试在 Python Shell 中运行以下命令以查看输出。
...
...
@@ -89,15 +89,15 @@ NameError: name 'print_msg' is not defined
* * *
##
我们什么时候关闭
?
##
什么时候拥有闭包
?
从上面的示例可以看出,当嵌套函数在其
封闭范围内引用一个值时,在 Python 中会有一个封闭
。
从上面的示例可以看出,当嵌套函数在其
定义范围内引用一个值时,在 Python 中会有一个闭包
。
以下几点总结了在 Python 中创建闭包必须满足的条件。
*
我们必须有一个嵌套函数(函数在函数内部)。
*
嵌套函数必须引用在
封闭
函数中定义的值。
*
封闭
函数必须返回嵌套函数。
*
嵌套函数必须引用在
外层
函数中定义的值。
*
外层
函数必须返回嵌套函数。
* * *
...
...
@@ -143,7 +143,7 @@ print(times5(times3(2)))
[
Python 装饰器
](
/python-programming/decorator
)
也广泛使用了闭包。
最后,最好指出可以发现
封闭
函数中包含的值。
最后,最好指出可以发现
外层
函数中包含的值。
所有函数对象都具有
`__closure__`
属性,如果它是闭包函数,则该属性返回单元格对象的元组。 参考上面的示例,我们知道
`times3`
和
`times5`
是闭包函数。
...
...
docs/py/51.md
浏览文件 @
62963f26
...
...
@@ -293,9 +293,9 @@ property(fget=None, fset=None, fdel=None, doc=None)
哪里,
*
`fget`
是获取属性值的
功能
*
`fset`
用于设置属性值的功能
*
`fdel`
具有删除属性的功能
*
`fget`
是获取属性值的
函数
*
`fset`
是设置属性值的函数
*
`fdel`
是删除属性的函数
*
`doc`
是一个字符串(如注释)
从实现中可以看出,这些函数参数是可选的。 因此,可以简单地如下创建属性对象。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录