【Python学习笔记】第3章 你应如何运行程序

打印 上一主题 下一主题

主题 511|帖子 511|积分 1535

这一章重要讲:如何启动Python程序、如何交互地输入代码、代码的各种运行方式。
交互式命令行模式

开始一个交互式会话

在终端中,输入python:

我们就开启了会话。结束会话按Ctrl+Z:

系统路径

假如我们要在终端中,输入python就可以启动,那么就必要设置环境变量PATH使其包罗安装的python路径,否则就必要输入完整的路径。
我们也可以在终端中输入 cd 来跳转。
Python 3.3中的新Windows选项:PATH和启动器

从Python3开始,Windows安装程序有一个选项,在选中时可以或许使Python 3.3的目录主动添加到PATH,这样我们就不用手动地添加了。
Python 3.3自带了一个新的能主动安装地Windows启动器。
运行的位置:代码目录

我们可以自由地在任何位置通过新建文件夹创建目录,并把它作为代码运行的目录。
不必要输入的内容:提示符和解释

交互模式下,Python中的>>>和...字符用于提示用户在它们后面输入内容。在.py文件中编程时不必要加上。

#后面是解释,表明器运行时主动忽略。
交互地运行代码

交互模式下,我们可以不断地向python输入命令,每一条命令在回车后立即实行。
为什么要利用交互式命令行模式

实验

我们可以在交互环境下,输入自己不清楚的表达式。

测试

我们也可以在交互环境下,测试已经写入文件的地方。

利用注意:交互命令行模式


  • 只能输入Python命令
  • print语句仅在文件中必须
  • 不必要缩进
  • 留意复合语句下的提示符变革:在提示你输入复合语句时,提示符为...
  • 用一个空行结束复合语句
  • 一次运行一条语句
系统命令行文件

交互式的缺点:写出来的程序不会保存。要永久保存程序,必要在文件中写入代码,这个文件叫做模块。运行模块文件时,python重新到尾实行文件中的代码。
第一段脚本

我们创建新的.py文件并在文本编辑器(这里用VSCode)中对其写入下面代码:

代码的寄义会在以后的章节中表明。
利用命令行运行文件

我们在终端中,把路径切换到上述文件所在的路径,并输入python script1.py,得到:

不同的命令利用用方式

我们可以运行程序,将其输入到指定文件上:

得到:

这种操作称为重定向。
利用py命令(即之条件到的Windows启动器)也有同样的效果,且不要求PATH设置。否则必要输入完整路径。
利用注意:命令行和文件


  • 在Windows的默认记事本上,创建新的文件必要修改后缀(默认为.txt)。假如看不到后缀,可以在文件资源管理器找到“检察”,选择文件夹选项,再勾选“显示文件扩展名”。
  • 在系统命令行模式下,利用文件扩展名和目录路径,但在利用import时别利用它们
  • 在文件中利用print语句
UNIX风格可实行脚本:#!

UNIX 脚本基础

在python源文件的第一行加上:
  1. #!usr/local/bin/python
复制代码
就是表明器的路径。操作系统利用它来找到表明器并运行代码。
UNIX env查找技巧

要制止在脚本文件中硬编码Python表明器的脚本路径,可以这么写:
  1. #!usr/bin/env python
复制代码
env通过系统的搜索路径的设置定位Python表明器,使代码更具有可移植性。
Python 3.3 Windows启动器:Windows也有#!了

点击文件图标

图标点击基础知识

点击Python程序文件,就可以让Python运行这个文件。
在Windows点击图标

我们可以注意到,.py文件的图标是白色的,.pyc文件的图标是黑色的。
Windows上输入的技巧

单击Python文件后,偶然会出现一个窗口然后迅速消失,这是由于Python表明的速度非常快,一瞬间就实行完了。为了看清效果,可以在程序文件的末尾处加一个:
  1. input()
复制代码
其他图标点击的限制

假如程序有错误,那么极有大概看不到,由于Python表明器会在打印错误信息后停止。为了解决这个问题,应当学会写一些代码来截取错误。
模块载入和重载

载入和重载基础知识

每一个.py的Python源代码文件都是一个模块,导入操作本质上就是载入一个文件,并给予读取那个文件内容的权限。这么设计的出发点是:大的Python程序往往由多个模块组成。
比如,我们可以在交互对话下输入载入模块指令import,但每次会话只能导入一次,这是由于,导入的开销非常大。

假如想再次导入,必要以下操作(由于我利用的是Python3,故弹出警告):

模块的宏观视角:属性

简单地说,属性就是绑定在特定对象(这里是模块)的变量名。如下图,模块myfile有一个属性是title。

可以直接导入模块,在利用模块中的属性,利用方法:.

也可以直接从模块导入属性,语法是:from  import

总之,上面两种方法都会使myfile.py得以实行,并获得在文件顶层赋值的变量名的访问权。
我们可以用函数dir()获取模块内部的可用的全部变量名。

注意到以双下划线开头的变量名,它们是由Python预定义的内置变量名。
利用注意:import和reload

reload是不可传递的,这是由于它不会重载该模块导入的任何模块。
利用exec运行模块文件


exec雷同于import,相当于“粘贴代码”,这意味着模块中的内容会覆盖掉一些变量的值。
IDLE用户界面

我用的是PyCharm,就不记这个了吧……(T v T)
其他IDE


  • Eclipse、PyDev
  • Komodo
  • NetBeans IDE Python版
  • PythonWin
  • Wing
  • Visual Studio Code
  • PyCharm
其他启动选项

嵌入式调用

在C/C++程序中运行Python字符串
冻结二进制可实行文件

文件编辑器启动方式

其他的启动方式


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

拉不拉稀肚拉稀

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表