Python之路,Day1 - hello word

Python 简介

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

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

  • Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。

  • Python 是交互式语言: 这意味着,您可以在一个Python提示符,直接互动执行写你的程序。

  • Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。

  • Python 是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏。

 


Python 发展历史

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

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

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

现在 Python 是由一个核心开发团队在维护,Guido van Rossum 仍然占据着至关重要的作用,指导其进展。

 


Python 特点

  • 1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。

  • 2.易于阅读:Python代码定义的更清晰。

  • 3.易于维护:Python的成功在于它的源代码是相当容易维护的。

  • 4.一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。

  • 5.互动模式:互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。

  • 6.可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。

  • 7.可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。

  • 8.数据库:Python提供所有主要的商业数据库的接口。

  • 9.GUI编程:Python支持GUI可以创建和移植到许多系统调用。

  • 10.可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。

  • Python 环境搭建

    本章节我们将向大家介绍如何在本地搭建Python开发环境。

    Python可应用于多平台包括 Linux 和 Mac OS X。

    你可以通过终端窗口输入 "python" 命令来查看本地是否已经安装Python以及Python的安装版本。

    Python下载

    Python最新源码,二进制文档,新闻资讯等可以在Python的官网查看到:

    Python官网:http://www.python.org/

    你可以在一下链接中下载Python的文档,你可以下载 HTML、PDF 和 PostScript 等格式的文档。

    Python文档下载地址:www.python.org/doc/

     


    Python安装

    Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。

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

    如果您平台的二进制代码是不可用的,你需要使用C编译器手动编译源代码。

    编译的源代码,功能上有更多的选择性, 为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的版本号。

    Window 平台安装 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目录:

    在命令提示框中(cmd) : 输入 

    path=%path%;C:\Python 

    按下"Enter"。

     

    注意: C:\Python 是Python的安装目录。

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

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

    MAC 平台安装 Python:

    最近的Macs系统都自带有Python环境,你也可以在链接 http://www.python.org/download/ 上下载最新版安装。


    Python 环境变量

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

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

     


    运行Python

    有三种方式可以运行Python:

    1、交互式解释器:

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

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

    $ 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 script.py # Unix/Linux 

    或者 

    C:>python script.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 。

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

    • 打开WEB浏览器访问http://www.python.org/download/
    • 在下载列表中选择Window平台安装包,包格式为:python-XYZ.msi 文件 , XYZ 为你要安装的版本号。
    • 要使用安装程序 python-XYZ.msi, Windows系统必须支持Microsoft Installer 2.0搭配使用。只要保存安装文件到本地计算机,然后运行它,看看你的机器支持MSI。Windows XP和更高版本已经有MSI,很多老机器也可以安装MSI。
    • 下载后,双击下载包,进入Python安装向导,安装非常简单,你只需要使用默认的设置一直点击"下一步"直到安装完成即可。

     

    Python 中文编码

    前面章节中我们已经学会了如何用 Python 输出 "Hello, World!",英文没有问题,但是如果你输出中文字符"你好,世界"就有可能会碰到中文编码问题。

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

    #!/usr/bin/python
    print "你好,世界";
    

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

      File "test.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
    

    Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。

    解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了。

    实例(Python 2.0+)

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-

    print "你好,世界";
    你好,世界
    

    所以如果大家再学习过程中,代码中包含中文,就需要在头部指定编码。

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

    注意:如果你使用编辑器,同时需要设置好编辑器的编码,如 Pycharm 设置步骤:

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

    Python 基础语法

    Python语言与Perl,C和Java等语言有许多相似之处。但是,也存在一些差异。

    在本章中我们将来学习Python的基础语法,让你快速学会Python编程。


    第一个Python程序

    交互式编程

    交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码。

    linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗口如下:

    $ python
    Python 2.7.6 (default, Sep  9 2014, 15:04:36) 
    [GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 
    

    Window上在安装Python时已经已经安装了默认的交互式编程客户端,提示窗口如下:

    python-shell

    在 python 提示符中输入以下文本信息,然后按 Enter 键查看运行效果:

    >>> print "Hello, Python!";
    

    在 Python 2.7.6 版本中,以上实例输出结果如下:

    Hello, Python!
    

    脚本式编程

    通过脚本参数调用解释器开始执行脚本,直到脚本执行完毕。当脚本执行完成后,解释器不再有效。

    让我们写一个简单的Python脚本程序。所有Python文件将以.py为扩展名。将以下的源代码拷贝至test.py文件中。

    print "Hello, Python!";
    

    这里,假设你已经设置了Python解释器PATH变量。使用以下命令运行程序:

    $ python test.py
    

    输出结果:

    Hello, Python!
    

    让我们尝试另一种方式来执行Python脚本。修改test.py文件,如下所示:

    #!/usr/bin/python
    
    print "Hello, Python!";
    

    这里,假定您的Python解释器在/usr/bin目录中,使用以下命令执行脚本:

    $ chmod +x test.py     # 脚本文件添加可执行权限
    $ ./test.py
    

    输出结果:

    Hello, Python!
    

    Python 标识符

    在python里,标识符有字母、数字、下划线组成。

    在python中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。

    python中的标识符是区分大小写的。

    以下划线开头的标识符是有特殊意义的。以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用"from xxx import *"而导入;

    以双下划线开头的(__foo)代表类的私有成员;以双下划线开头和结尾的(__foo__)代表python里特殊方法专用的标识,如__init__()代表类的构造函数。


    Python保留字符

    下面的列表显示了在Python中的保留字。这些保留字不能用作常数或变数,或任何其他标识符名称。

    所有Python的关键字只包含小写字母。

    and exec not
    assert finally or
    break for pass
    class from print
    continue global raise
    def if return
    del import try
    elif in while
    else is with
    except lambda yield

    行和缩进

    学习Python与其他语言最大的区别就是,Python的代码块不使用大括号({})来控制类,函数以及其他逻辑判断。python最具特色的就是用缩进来写模块。

    缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。如下所示:

    if True:
        print "True"
    else:
      print "False"
     

    以下代码将会执行错误:

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    # 文件名:test.py
    
     if True:
        print "Answer"
        print "True"
    else:
        print "Answer"
        # 没有严格缩进,在执行时保持
      print "False"
    

    执行以上代码,会出现如下错误提醒:

    $ python test.py  
      File "test.py", line 5
        if True:
        ^
    IndentationError: unexpected indent
    

    IndentationError: unexpected indent 错误是python编译器是在告诉你"Hi,老兄,你的文件里格式不对了,可能是tab和空格没对齐的问题",所有python对格式要求非常严格。

    如果是 IndentationError: unindent does not match any outer indentation level错误表明,你使用的缩进方式不一致,有的是 tab 键缩进,有的是空格缩进,改为一致即可。

    因此,在Python的代码块中必须使用相同数目的行首缩进空格数。

    建议你在每个缩进层次使用 单个制表符 或 两个空格 或 四个空格 , 切记不能混用


    多行语句

    Python语句中一般以新行作为为语句的结束符。

    但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下所示:

    total = item_one + \
            item_two + \
            item_three
    

    语句中包含[], {} 或 () 括号就不需要使用多行连接符。如下实例:

    days = ['Monday', 'Tuesday', 'Wednesday',
            'Thursday', 'Friday']
    

    Python 引号

    Python 接收单引号(' ),双引号(" ),三引号(''' """) 来表示字符串,引号的开始与结束必须的相同类型的。

    其中三引号可以由多行组成,编写多行文本的快捷语法,常用语文档字符串,在文件的特定地点,被当做注释。

    word = 'word'
    sentence = "这是一个句子。"
    paragraph = """这是一个段落。
    包含了多个语句"""
    

    Python注释

    python中单行注释采用 # 开头。

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    # 文件名:test.py
    
    # 第一个注释
    print "Hello, Python!";  # 第二个注释
    

    输出结果:

    Hello, Python!
    

    注释可以在语句或表达式行末:

    name = "Madisetti" # 这是一个注释
    

    python 中多行注释使用三个单引号(''')或三个双引号(""")。

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    # 文件名:test.py
    
    
    '''
    这是多行注释,使用单引号。
    这是多行注释,使用单引号。
    这是多行注释,使用单引号。
    '''
    
    """
    这是多行注释,使用双引号。
    这是多行注释,使用双引号。
    这是多行注释,使用双引号。
    """
    

    Python空行

    函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。

    空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。

    记住:空行也是程序代码的一部分。


    等待用户输入

    下面的程序在按回车键后就会等待用户输入:

    #!/usr/bin/python
    
    raw_input("\n\nPress the enter key to exit.")
    

    以上代码中 ,"\n\n"在结果输出前会输出两个新的空行。一旦用户按下键时,程序将退出。


    同一行显示多条语句

    Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,以下是一个简单的实例:

     

    #!/usr/bin/python
    
    import sys; x = 'runoob'; sys.stdout.write(x + '\n')
    

    执行以上代码,输入结果为:

    $ python test.py
    runoob



    命令行参数

    很多程序可以执行一些操作来查看一些基本信,Python可以使用-h参数查看各参数帮助信息:

    $ python -h 
    usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ... 
    Options and arguments (and corresponding environment variables): 
    -c cmd : program passed in as string (terminates option list) 
    -d     : debug output from parser (also PYTHONDEBUG=x) 
    -E     : ignore environment variables (such as PYTHONPATH) 
    -h     : print this help message and exit 
     
    [ etc. ] 

    Python 循环语句

    本章节将向大家介绍Python的循环语句,程序在一般情况下是按顺序执行的。

    编程语言提供了各种控制结构,允许更复杂的执行路径。

    循环语句允许我们执行一个语句或语句组多次

    Python提供了for循环和while循环(在Python中没有do..while循环):

    循环类型描述
    while 循环 在给定的判断条件为 true 时执行循环体,否则退出循环体。
    for 循环 重复执行语句
    嵌套循环 你可以在while循环体中嵌套for循环
    
    

    循环控制语句

    循环控制语句可以更改语句执行的顺序。Python支持以下循环控制语句:

    控制语句描述
    break 语句 在语句块执行过程中终止循环,并且跳出整个循环
    continue 语句 在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。
    pass 语句 pass是空语句,是为了保持程序结构的完整性。
posted @ 2016-07-29 09:07  liurun  阅读(162)  评论(0编辑  收藏  举报