设为首页 收藏本站
查看: 564|回复: 0

[经验分享] 解释器文件Python Tutorial(二):使用Python解释器 解释器文件

[复制链接]

尚未签到

发表于 2017-5-1 14:42:35 | 显示全部楼层 |阅读模式
  最近朋友几篇文章介绍了改解释器文件的文章. 关联文章的地址

2.1 调用解释器
  Python解释器常通安装到/usr/local/bin/python3.3,把/usr/local/bin放入到你的Unix shell的搜索路径里,使够能通过在shell中键入令命启动:

python3.3



  因为解释器的安装录目是可选的,其它路径也可以。通过你地本的Python专家或统系管理员行进核实。(/usr/local/python是一个行流的可选位置)
  在Windows器机上,Python常通安装在c:\python33,你可以在安装时变改这个位置。把这个录目添加到path中去,可以在令命提示符中键入上面令命:

set path=%path%;C:\python33



  在主提示符键入一个文件结束符(Control-D在Unix上,Control-Z在Windows上)使解释器以零状态退出。如果这样行不,可以键入quit()令命退出解释器。
  解释器操纵有些像Unix shell:当以连接到一个tty设备的标准入输调用时,它交互的取读和行执令命。当以一个文件名字参数或一个文件作为标准入输时,它从文件里取读和行执脚本。
  第二种启动解释器的式方是python -c command [arg] ...,在令命面里行执语句,与shell的-c项选较为似相。因为Python语句里经常包含空格或其它字符,这些对于shell都是特殊字符,常通议建应用单引号将令命全体包含起来。
  一些Python块模作为脚本也是非常有效的,它们可以应用python -m module [arg] ...来调用,它行执源文件,就像你在令命行面里拼写全名一样。
  当一个脚本文件被应用,可以行运脚本,然后进入交互式模。可以通过在脚本前传入-i来成完。

2.1.1 参数传递
  当知道了解释器,脚本名称和额定的参数此后被转化到一个字符串表列里,并且赋给sys块模里的argv量变。你可以行执import sys来访问这个表列。表列的度长至少是1。当没有脚本和参数时,sys.argv[0]是一个空字符串。当脚本的名字是-时(意味着标准入输),sys.argv[0]被设置为-。当应用-c令命时,sys.argv[0]被设置为-c。当应用-m块模时,sys.argv[0]被设置为指定块模的全名。-c或-m面后的项选不被Python解释器的项选理处所应用,而是留在sys.argv中被令命或块模理处。

2.1.2 交互式模
  当从一个tty读到令命时,解释器被说成是交互式模。它通过主提示符提示下一条令命,常通三个大于号(>>>)。对于继承的行,应用第二提示符行进提示,默许是三个点(...)。解释器在打印出第一条提示符之前会先打印一个迎欢息消表现出版本号和版权注意:

$ python3.3
Python 3.3 (default, Sep 24 2012, 09:25:04)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>




  当进入一个多行构结时,就需要继承行了。例如,看上面的if语句:

>>> the_world_is_flat = 1
>>> if the_world_is_flat:
...     print("Be careful not to fall off!")
...
Be careful not to fall off!





2.2 解释器和它的环境

2.2.1 错误捕获
  当一个错误生发时,解释器打印一个错误信息和堆栈踪跟。在交互式模,返回到主提示符。当从一个文件入输时,打印出堆栈踪跟后以非零状态退出。(异常被try语句的except从句捕获并不算错误)一些错误是无条件的致命的,引发以非零状态退出。这是由于内部矛盾和一些内存不足成造的。全体的错误息消被写到标准错误流。常正的行执令命出输被写入标准出输。
  键入断中字符(常通Control-C或DEL)到重要或二级提示符消取入输返回到主提示符。当令命正在行运时键入断中会引发KeyboardInterrupt异常,可以被try语句捕获。

2.2.2 可行执Python脚本
  在BSD Unix统系上,Python脚本直接就是可行执的,像shell脚本,通过入加这行:

#! /usr/bin/env python3.3




  (假设解释器在户用的PATH上)在脚本的开始,给文件一个可行执式模。#!必须是文件的前两个字符。在一些平台上,第一行必须以Unix款式开头(\n),不是Windows款式(\r\n)。注意那个#字符,常通应用它作为单行注释。
  脚本可以被给一个可行执式模,或权限,应用chmod令命:

$ chmod +x myscript.py




  在Windows统系,没有可行执式模的念概。Python安装程序自动关联.py文件到python.exe,双击一个Python文件即作为脚本行运它。扩展名也可所以.pyw,这时,控制台窗口的涌现一般被阻挠。

2.2.3 源文件编码
  默许,Python源文件被以UTF-8编码待对。世界上少数语言字符可以同时用作字符串字面量,标识符和注释,尽管标准库只应用ASCII字符作为标识符,一个任何轻巧代码都应该守遵的习气。为了全体的字符都能合适的表现,你的编辑器必须能认出文件是UTF-8,必须应用一种能支撑文件中全体字符的字体。
  也可为以源文件指定一个不同的编码。在#!行面后多加一行特殊的注释行来定义源文件编码:

# -*- coding: encoding -*-




  有了这个声明后,源文件中的全体内容都被作为新的编码待对,可能的编码表列在Python的库中会被找到。
  例如,你选择的编辑器不支撑UTF-8编码文件,并且决坚应用其它编码,如Windows-1252,你可以这样写:

# -*- coding: cp-1252 -*-




  源文件中全体字符都应用Windows-1252字符集。这个特殊的编码注释必须被放在文件的第一或第二行。
  本文是对官方网站内容的翻译,原文地址:http://docs.python.org/3/tutorial/interpreter.html
  文章结束给大家分享下程序员的一些笑话语录: 乔布斯:怎么样还是咱安全吧!黑客:你的浏览器支持国内网银吗?苹果可以玩国内的网游吗乔布斯:......不可以黑客:那我研究你的漏洞干嘛,我也需要买奶粉!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-371722-1-1.html 上篇帖子: 玩手机的都来看,教祢认识Python 下篇帖子: Dave Python 练习十 -- 条件和循环
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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