Python_01_环境搭建

Python 返回到 『Python』

开局一张图

首先来看下 TIOBE 2018 年 8 月编程语言指数排行榜

 TIOBE 2018 年 8 月编程语言指数排行榜
TIOBE 2018 年 8 月编程语言指数排行榜

谁适合阅读本教程?

本教程适合想从零开始学习Python编程语言的开发人员。当然本教程也会对一些模块进行深入,让你更好的了解Python的应用。


学习本教程前你需要了解

在继续本教程之前,你应该了解一些基本的计算机编程术语。如果你学习过其他编程语言,将有更加助于你快速了解Python编程。

Python简述

Python是一种面向对象、解释型、动态数据类型的高级程序设计语言。

Python由Guido van Rossum于1989年底发明。

像Perl语言一样, Python 源代码同样遵循 GPL  (  GNU General Public License)协议。


Python 简介

Python是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

Python的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。

  • Python 是一种解释型语言: 这意味着开发过程中没有编译这个环节。类似于PHP和Perl语言。
  • Python 是交互式语言: 这意味着,您可以在一个Python命令行中,直接REPL交互执行代码。
  • Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
  • Python是初学者的语言:它支持广泛的应用程序开发,从简单的文字处理到 Web 浏览器再到游戏。

 


Python概述

Python(/ˈpaɪθən/ ), 是一种面向对象的解释型计算机程序设计语言,荷兰人Guido van Rossum于1982年获得阿姆斯特丹大学的数学和计算机科学的硕士学位, 于1989年发明Python。

Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议 。Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。


Python历史

Python是由Guido van Rossum在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的。

Python 本身也是由诸多其他语言发展而来的,这包括 ABC、Modula-3、C、C++、Algol-68、SmallTalk、Unix shell 和其他的脚本语言等等。

像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议。


Python资料

官网:https://www.python.org/

API文档:https://docs.python.org/3/

文档地址:https://www.python.org/doc/

下载:https://www.python.org/downloads/

教程:http://vwhm.net/编程语言/python


Python特点

  • 1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。
  • 2.易于阅读:Python代码定义的更清晰。
  • 3.易于维护:Python的成功在于它的源代码是相当容易维护滴。
  • 4.一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台,在UNIX,Windows和Mac兼容很好。
  • 5.互动模式:互动模式的支持,您可以从终端输入并获得结果的语言,互动的测试和调试代码片断。
  • 6.便携式:Python可以运行在多种硬件平台和所有平台上都具有相同的接口。
  • 7.可扩展:可以添加低层次的模块到Python解释器。这些模块使程序员可以添加或定制自己的工具,更有效。
  • 8.数据库:Python提供所有主要的商业数据库的接口。
  • 9.GUI编程:Python支持GUI,可以创建和移植到许多系统调用。
  • 10.可扩展性:相比 shell 脚本,Python 提供了一个更好的结构,且支持大型程序。

Python优点

1.简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。

2.易学:Python极其容易上手,因为Python有极其简单的说明文档。

3.速度快:Python 的底层是用 C 语言写的,很多标准库和第三方库也都是用 C 写的,运行速度非常快。

4.免费、开源:Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。

5.高层语言:用Python语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。

6.可移植性:由于它的开源本质,Python已经被移植在许多平台上。这些平台包括LinuxWindows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE、PocketPC、Symbian以及Google基于linux开发的android平台。

7.解释性:Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。在计算机内部,Python解释器会把源代码转换成称为字节码的中间形式,然后再把字节码翻译成计算机使用的机器语言并运行。这使得使用Python更加简单。也使得Python程序更加易于移植。

8.面向对象:Python既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。

9.可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以部分程序用C或C++编写,然后在Python程序中使用它们。

10.可嵌入性:可以把Python嵌入C/C++程序,从而向程序用户提供脚本功能。

11.丰富的库:Python标准库十分庞大。它可以帮助处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython(wxPython是Python语言的一套优秀的GUI图形库。它允许Python程序员很方便的创建完整的、功能键全的GUI用户界面)、PyQt5(PyQt5是一套来自Digia的Qt5应用框架和Python的粘合剂)、Twisted(用Python实现的基于事件驱动的网络引擎框架)和Python图像库等等

12.规范的代码:Python采用强制缩进的方式使得代码具有较好可读性。而用Python语言写的程序不需要编译成二进制代码。


Python缺点

1.单行语句和命令行输出问题:绝大部分情况下, 无法将程序连写成一行,如 import sys;for i in sys.path:print i。而perlawk(一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一)就无此限制,可以较为方便地在shell下完成简单程序。

2.独特的语法: 这也许不应该被称为局限,但是它用缩进来区分语句关系的方式还是给很多初学者带来了困惑。即便是很有经验的Python程序员,也可能陷入陷阱当中。最常见的情况是tab空格的混用会导致错误,而这是用人眼无法分别的。

3.运行速度慢:与C和C++相比。


Python编码风格

Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。

设计者开发时总的指导思想是,对于一个特定的问题,只要有一种最好的方法来解决就足够了(There should be one– and preferably only one –obvious way to do it).  这正好和Perl语言的中心思想(There’s More Than One Way To Do It)完全相反。

Python的作者有意的设计限制性很强的语法,使得不好的编程习惯(例如if语句的下一行不向右缩进的话)都不能通过编译。其中很重要的一项就是Python的缩进规则

另一个和其他大多数语言(如C)的区别就是: 一个模块的界限,完全是由每行的首字符在这一行的位置来决定的(而C语言是用一对花括号{}来明确的定出模块的边界的,与字符的位置毫无关系)。这一点曾经引起过非常广大的争议。因为自从C这类的语言诞生后,语言的语法含义与字符的排列方式分离开来,曾经被认为是一种程序语言的进步。不过不可否认的是,Python通过强制程序员进行缩进(包括if,for和函数定义等所有需要使用模块的地方),确实使得程序更加清晰和美观。


Python设计定位

Python的设计哲学是“优雅”、“明确”、“简单”。因此,在Perl语言中“总是有多种方法来做同一件事”的理念在Python开发者中通常是难以忍受的。Python开发者的哲学是“用一种方法,最好是只有一种方法来做一件事”。在设计Python语言时,如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确的没有或者很少有歧义的语法。由于这种设计观念的差异,Python源代码通常被认为比Perl具备更好的可读性,并且能够支撑大规模的软件开发。这些准则被称为Python格言。在Python解释器内运行import this可以获得完整的列表。

Python开发人员尽量避开不成熟或者不重要的优化。一些针对非重要部位的加快运行速度的补丁通常不会被合并到Python内。所以很多人认为Python很慢。不过,大多数程序对速度要求不高。在某些对运行速度要求很高的情况,Python设计师倾向于使用JIT(Just In Time)技术,或者用使用C/C++语言改写这部分程序。可用的JIT技术是PyPy

Python是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。

虽然Python可能被粗略地分类为“脚本语言”(script language),但实际上一些大规模软件开发计划例如Zope (一个开放源代码的Web应用服务器)及BitTorrent,Google也广泛地使用它。Python的支持者较喜欢称它为一种高级动态编程语言。

Python本身被设计为可扩充的。并非所有的特性和功能都集成到语言核心。Python提供了丰富的API和工具,以便程序员能够轻松地使用C语言、C++、Cython来编写扩充模块。Python编译器本身也可以被集成到其它需要脚本语言的程序内。因此,很多人还把Python作为一种“胶水语言”(glue language)使用。使用Python将其他语言编写的程序进行集成和封装。在Google内部的很多项目,例如Google Engine使用C++编写性能要求极高的部分,然后用Python或Java/Go调用相应的模块。他们的目的是 Python where we can, C++ where we must,在操控硬件的场合使用 C++,在快速开发时候使用 Python。


Python执行机制

Python在执行时,首先会将.py文件中的源代码编译成Python的byte code(字节码),然后再由Python Virtual Machine(Python虚拟机)来执行这些编译好的byte code。这种机制的基本思想跟Java和.NET是一致的。然而,Python Virtual Machine与Java和.NET的Virtual Machine不同的是,Python的Virtual Machine是一种更高级的Virtual Machine。这里的高级不是说Python的Virtual Machine比Java和.NET的功能更强大,而是说和Java 和.NET相比,Python的Virtual Machine距离真实机器的距离更远。也就是说,Python的Virtual Machine是一种抽象层次更高的Virtual Machine。

基于C的Python编译出的字节码文件,通常是.pyc格式。

除此之外,Python还可以以交互模式运行,比如主流操作系统Unix/Linux、Mac、Windows都可以直接在命令模式下直接运行Python交互环境。直接下达操作指令即可实现交互操作。


floss [flɒs] [flɔ:s]
n. 绒毛; 丝棉; 乱丝; 绣花丝线;
vi. 用牙线清洁牙齿;
[例句]Craft Resources also sells yarn and embroidery floss.
工艺人员服务公司也售卖纱线和绣花丝线

Python 工具/库

推荐Python基础学完后立刻学习强大的Python库

1.  Tkinter:  Python默认的图形界面接口。Tkinter是一个和Tk接口的Python模块,Tkinter库提供了对Tk API的接口,它属于Tcl/Tk的GUI工具组。

2.  PyGTK:  用于python GUI程序开发的GTK+库。GTK就是用来实现GIMP(GNU Image Manipulation Program,跨平台的图像处理程序,号称Linux下的PhotoShop)Gnome的库。

3.  PyQt:  用于python的Qt开发库。QT就是实现了KDE环境(K Desktop Environment)的那个库,由一系列的模块组成,有qt, qtcanvas, qtgl, qtnetwork, qtsql, qttable, qtui and qtxml,包含有300个类和超过5750个的函数和方法。PyQt还支持一个叫qtext的模块,它包含一个QScintilla库。该库是Scintillar编辑器类的Qt接口(Scintilla是一个免费、跨平台、支持语法高亮的编辑控件)

4.  wxPython:  GUI编程框架,熟悉MFC的人会非常喜欢,简直是同一架构(对于初学者或者对设计要求不高的用户来说,使用 Boa Constructor-支持控件托拽的IDE-可以方便迅速的进行wxPython的开发)

5.  PIL:  python提供强大的图形处理的能力,并提供广泛的图形文件格式支持,该库能进行图形格式的转换、打印和显示。还能进行一些图形效果的处理,如图形的放大、缩小和旋转等。是Python用户进行图象处理的强有力工具。

6.  Psyco:  一个Python代码加速器,可使Python代码的执行速度提高到与编译语言一样的水平。

7.  xmpppy:  Jabber服务器采用开发的XMPP协议,Google Talk也是采用XMPP协议的IM系统。在Python中有一个xmpppy模块支持该协议。也就是说,我们可以通过该模块与Jabber服务器通信,Cool。

8.  PyMedia:  用于多媒体操作的python模块。它提供了丰富而简单的接口用于多媒体处理(wav, mp3, ogg, avi, divx, dvd, cdda etc)。可在Windows和Linux平台下使用。

9.  Pmw:  Python megawidgets,Python超级GUI组件集,一个在python中利用Tkinter模块构建的高级GUI组件,每个Pmw都合并了一个或多个Tkinter组件,以实现更有用和更复杂的功能。

10.  PyXML:  用Python解析和处理XML文档的工具包,包中的4DOM是完全相容于W3C DOM规范的。


Python 标准库

Python拥有一个强大的标准库。Python语言的核心只包含数字、字符串、列表、字典、文件等常见类型和函数,而由Python标准库提供了系统管理、网络通信、文本处理、数据库接口、图形系统、XML处理等额外的功能。Python标准库命名接口清晰、文档良好,很容易学习和使用。

Python社区提供了大量的第三方模块,使用方式与标准库类似。它们的功能无所不包,覆盖科学计算、Web开发、数据库接口、图形系统多个领域,并且大多成熟而稳定。第三方模块可以使用Python或者C语言编写。SWIG(Simplified Wrapper and Interface Generator)、SIP(一种Python工具,用于自动生成Python与C、C++库的绑定)常用于将C语言编写的程序库转化为Python模块。Boost C++ Libraries包含了一组库如: Boost.Python,使得以 Python 或 C++ 编写的程序能互相调用。借助于拥有基于标准库的大量工具、能够使用低级语言如C及可以作为其他库接口的C++,Python已成为一种强大的应用于其他语言与工具之间的胶水语言。

 

Python标准库的主要功能有:

1.文本处理,包含文本格式化、正则表达式匹配、文本差异计算与合并、Unicode支持,二进制数据处理等功能

2.文件处理,包含文件操作、创建临时文件、文件压缩与归档、操作配置文件等功能

3.操作系统功能,包含线程与进程支持、IO复用、日期与时间处理、调用系统函数、写日记(logging)等功能

4.网络通信,包含网络套接字,SSL加密通信、异步网络通信等功能

5.网络协议,支持HTTP,FTP,SMTP,POP,IMAP,NNTP,XMLRPC等多种网络协议,并提供了编写网络服务器的框架W3C格式支持,包含HTML,SGML,XML的处理。

6.其它功能,包括国际化支持、数学运算、HASH、Tkinter等


Python 开发环境IDE

  • IDLE:Python内置IDE (随python安装包提供)
  • PyCharm  :由著名的JetBrains公司开发,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工 具,比如断点调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。
  • Komodo和Komodo Edit:后者是前者的免费精简版
  • PythonWin:ActivePython或pywin32均提供该IDE,仅适用于Windows
  • SPE(Stani’s Python Editor):功能较多的自由软件,基于wxPython
  • Ulipad:功能较全的自由软件,基于wxPython;作者是中国Python高手limodou
  • WingIDE:可能是功能最全的IDE,但不是自由软件(教育用户和开源用户可以申请免费key)
  • Eric:基于PyQt的自由软件,功能强大。全名是:The Eric Python IDE
  • DrPython
  • PyScripter:使用Delphi开发的轻量级的开源Python IDE, 支持Python2.6和3.0。
  • PyPE:一个开源的跨平台的PythonIDE。
  • bpython: 类Unix操作系统下使用curses库开发的轻量级的Python解释器。语法提示功能。
  • eclipse + pydev插件:方便调试程序
  • emacs:自带python支持,自动补全、refactor等功能需要插件支持
  • Vim: 最新7.3版编译时可以加入python支持,提供python代码自动提示支持
  • Visual Studio 2003 + VisualPython:仅适用Windows,已停止维护,功能较差
  • SlickEdit
  • Visual Studio 2010 + Python Tools for Visual Studio
  • TextMate
  • Netbeans IDE
  • Sublime

Python 著名应用

  • Pylons-Web应用框架
  • Zope– 应用服务器
  • Plone- 内容管理系统
  • Django– 鼓励快速开发的Web应用框架
  • Uliweb- 国人开发的轻量级Web框架
  • TurboGears- 另一个Web应用快速开发框架
  • Twisted–Python的网络应用程序框架
  • Python Wikipedia Robot Framework- MediaWiki的机器人程序
  • MoinMoinWiki- Python写成的Wiki程序
  • flask- Python 微Web框架
  • tornado- 非阻塞式服务器
  • Webpy- Python 微Web框架
  • Bottle- Python 微Web框架
  • EVE- 网络游戏EVE大量使用Python进行开发
  • Reddit – 社交分享网站
  • Dropbox – 文件分享服务
  • Pylons – Web应用框架
  • TurboGears – 另一个Web应用快速开发框架
  • Fabric – 用于管理成百上千台Linux主机的程序库
  • Trac – 使用Python编写的BUG管理系统
  • Mailman – 使用Python编写的邮件列表软件
  • Mezzanine – 基于Django编写的内容管理系统
  • Blender – 以C与Python开发的开源3D绘图软件

 

 


Python 环境搭建

Python可应用于多平台包括 Linux 和 Mac OS X,这些系统已经自带python支持,不需要再配置安装了。

 

Windows 下直接下载最新版的 Python 2.7.9,安装的时候注意选择

Python包管理工具pip  && 添加到环境变量Add Python.exe to Path 

你可以通过终端窗口输入 “python” 命令或者”python –version” 命令

查看本地是否已经安装Python以及Python的安装版本。

 

 


Python安装

Python已经被移植在许多平台上。

您需要下载适用于您使用平台的二进制代码,然后安装Python。

 

以下为不同平台上安装Python的方法:

Unix & Linux 平台安装 Python:

以下为在Unix & Linux 平台上安装 Python 的简单步骤:

  • 打开WEB浏览器访问http://www.python.org/download/
  • 选择适用于Unix/Linux的源码压缩包。
  • 下载及解压压缩包。
  • 如果你需要自定义一些选项,可以修改Modules/Setup
  • 执行 ./configure 脚本
  • make
  • make install

执行以上操作后,Python会安装在 /usr/local/bin 目录中,

Python库安装在/usr/local/lib/pythonXX,XX为你使用的Python的版本号。


Windows 平台安装 Python:

以下为在 Windows 平台上安装 Python 的简单步骤:

  • 打开WEB浏览器访问http://www.python.org/download/
  • 在下载列表中选择Windows平台安装包,包格式为:python-XYZ.msi 文件 , XYZ 为你要安装的版本号。
  • 下载要使用的安装程序 python-XYZ.msi
  • 下载后,双击下载包,进入Python安装向导,安装非常简单,你只需要使用默认的设置一直点击”下一步”直到安装完成即可。

MAC 平台安装 Python:

Mac系统都自带有Python环境,但是自带的Python版本为旧版本,你可以通过链接http://www.python.org/download/mac/ 查看MAC上Python的新版本下载地址。


环境变量配置

程序和可执行文件可以在许多目录,而这些路径很可能不在操作系统提供可执行文件的默认搜索路径中。

path(路径)存储在环境变量中,这是由操作系统维护的一个命名的字符串。这些变量包含可用的命令行解释器和其他程序的信息。

 

Unix或Windows中路径变量为PATH(UNIX区分大小写,Windows不区分大小写)。

 

在Mac OS中,安装程序过程中改变了python的安装路径。

如果你需要在其他目录引用Python,你必须在path中添加Python目录。

在 Unix/Linux 设置环境变量

  • 在 csh shell: 输入
    setenv PATH "$PATH:/usr/local/bin/python"

    按下”Enter”。

  • 在 bash shell (Linux): 输入
    export PATH="$PATH:/usr/local/bin/python"

    按下”Enter”。

  • 在 sh 或者 ksh shell: 输入
    PATH="$PATH:/usr/local/bin/python"

    , 按下”Enter”。

注意: /usr/local/bin/python 是要换成实际的Python安装目录。


在 Windows 设置环境变量

在环境变量中添加Python目录:

path=%path%;C:\Python 

按下”Enter”。

注意: C:\Python 是要换成实际的Python安装目录。

 

也可以通过以下方式设置:

  • 右键点击”计算机”,然后点击”属性”
  • 然后点击”高级系统设置”
  • 选择”系统变量”窗口下面的”Path”,双击即可!
  • 然后在”Path”行,添加python安装路径即可(例如D:\Python32),所以在后面,添加该路径即可。 ps:记住,路径直接用分号”;”隔开喔
  • 最后设置成功以后,打开cmd命令行,输入命令”python”,就可以显示当前系统中安装的python版本。

python

 


Python 环境变量

下面几个重要的环境变量,它应用于Python:

变量名 描述
PYTHONPATH PYTHONPATH是Python搜索路径,默认我们import的模块都会从PYTHONPATH里面寻找。
PYTHONSTARTUP Python启动后,先寻找PYTHONSTARTUP环境变量,然后执行此文件中变量指定的执行代码。
PYTHONCASEOK 加入PYTHONCASEOK的环境变量, 就会使python导入模块的时候不区分大小写.
PYTHONHOME 另一种模块搜索路径。它通常内嵌于的PYTHONSTARTUP或PYTHONPATH目录中,使得两个模块库更容易切换。

 


运行Python

有三种方式可以运行Python:

1、交互式解释器(REPL, Read Eval Print Loop):

你可以通过命令行窗口进入python并开在交互式解释器中开始编写Python代码。

你可以在Unix,DOS或任何其他提供了命令行或者shell的系统进行python编码工作。

$python         # Unix/Linux

或者
python%        # Unix/Linux
或者
C:>python      # Windows/DOS

以下为Python命令行参数:

选项 描述
-d 在解析时显示调试信息
-O 生成优化代码 ( .pyo 文件 )
-S 启动时不引入查找Python路径的位置
-v 输出Python版本号
-X 从 1.6版本之后基于内建的异常(仅仅用于字符串)已过时。
-c cmd 执行 Python 脚本,并将运行结果作为 cmd 字符串。
file 在给定的python文件执行python脚本。

2、命令行脚本

在你的应用程序中通过引入解释器可以在命令行中执行Python脚本,如下所示:

$python demo.py             # Unix/Linux
或者
python% demo.py           # Unix/Linux
或者
C:>python demo.py         # Windows/DOS

注意:在执行脚本时,请检查脚本是否有可执行权限。

3、集成开发环境(IDE:Integrated Development Environment)

您可以使用图形用户界面(GUI)环境来编写及运行Python代码。

以下推荐各个平台上使用的IDE:

  • Unix: IDLE 是 UNIX 上最早的 Python IDE 。
  • Windows: PythonWin 是一个 Python 集成开发环境,在许多方面都比 IDE 优秀
  • Macintosh: Python 的 Mac 可以使用 IDLE IDE,你可以在网站上下载对应MAC的IDLE 。

在以后的教程中给出的例子已在Mac OSX  下Python2.7.10版本测试通过。


执行第一个Python程序

对于大多数程序语言,第一个入门编程代码便是”Hello Beyond!”,

以下代码为使用Python输出”Hello Beyond!”:

实例(Python 2.7.10)

#!/usr/bin/python
printHello, Beyond!“;

 

Python 3.0+版本已经把print作为一个内置函数,输出”Hello World!”代码如下:

实例(Python 3.0+)

#!/usr/bin/python
print(“Hello, Beyond!“);

Python 中文编码

上面内容中我们已经用 Python 输出 “Hello, Beyond!”,英文没有问题,

但是如果你输出中文字符”你好,帅哥”时, 就有可能会碰到中文编码问题。

Python 文件中如果未指定编码,在执行过程会出现报错:

#!/usr/bin/python
print "你好,帅哥";

以上程序执行输出结果为:

  File "demo.py", line 2
SyntaxError: Non-ASCII character '\xe4' in file test.py on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

以上出错信息显示了我们未指定编码,

解决方法为只要在文件demo.py开头第一行加入

# -*- coding: UTF-8 -*-

或者

#coding=utf-8

就行了。

 

实例(Python 2.0+)

#!/usr/bin/python
# -*- coding: UTF-8 -*-print “你好,帅哥”;

输出结果为:

你好,帅哥

如果在编码过程中包含中文,就必须要在头部指定编码。

 

注意:Python3.X 源码文件默认使用utf-8编码,所以可以正常解析中文,无需指定 UTF-8 编码。


注意:如果你使用了编辑器,则还需要设置好编辑器的编码,

例如设置编辑器PyCharm的编码为utf-8格式,步骤如图所示:

1. 进入 file > Settings,在输入框搜索 encoding。
找到 Editor > File encodings,将 IDE Encoding 和 Project Encoding 设置为utf-8。

2.在文件demo.py文件开头第一行写上#coding=utf-8

Pycharm设置IED编码格式为UTF-8
Pycharm设置IED编码格式为UTF-8