zoukankan      html  css  js  c++  java
  • Python基础语法

    1、继续(\)

      Python语句,一般使用换行分割,也就是说一行一个语句。一行过长的语句可以使用反斜杠(\)分解成几行,如下例:  

    >>> weather_is_hot = 1
    >>> shark_warnings = 0
    >>> if(weather_is_hot==1) and \
    ... (shark_warnings==0):
    ...     print '\\ is a go on mark!'
    ... 
    \ is a go on mark!

         有另外两种例外情况一个语句不是用反斜杠也可以跨行。在使用闭合操作符时,单一语句可以跨多行,例如:在含有小括号、中括号、花括号时可以多行书写。另外就是三引号包括下的字符串也可以跨行书写,如下例:

    #显示一个三引号字符串
    print ''' hi there, this is a long message for you 
    that goes over multiple lines.... you will find out
    soon that triple quotes in Python allows this kind of fun!
    it is like a day on the beach!'''
    
    #给一些变量赋值
    go_surf,  get_a_tan_while, boat_size, toll_money = (1,
    'windsurfing', 40.0, -2.00) 

     2、分号(;)允许你将多个语句写在同一行上,语句之间用分号隔开,而这些语句也不能在这一行开始一个新的代码块。例子如下:

    import sys; x = 'fool'; sys.stdout.write(x+'n')

    必须指出一点,同一行书写多个语句大大降低代码的可读性,Python虽然允许,但不提倡这么做。

    3、赋值操作符

              在C中,你会知道复制语句其实被当成一个表达式(可以返回值),不过在Python中,并不适合,Python的赋值语句不会返回值。类似下面的语句在Python中是非法的。

    >>> x = 1
    >>> y = (x = x + 1) #赋值语句不是合法的表达式
      File "<stdin>", line 1
        y = (x = x + 1) #赋值语句不是合法的表达式
               ^
    SyntaxError: invalid syntax
    >>> 

    链式复制没问题,比如:

    >>> y = x = x +1
    >>> x,y
    (2, 2)
    >>> 

    3、增量赋值

    Python的增量赋值不支持x++或--x这样的前置/后置自增/自减运算。通常用下面的完成增量赋值,示例如下:

    >>> m=12
    >>> m%=7
    >>> m
    5
    >>> m**=2
    >>> m
    25
    >>> aList=[123,'xyz']
    >>> aList+=[4.56e10]
    >>> aList
    [123, 'xyz', 45600000000.0]
    >>> 

    4、“多元”赋值

    另一种将多个变量同时赋值的方法,采用这种方式的时候,左边对象是元组,右边对象也是元组:示例如下:

    >>> x,y,z=1,2,'www.58lxqy'
    >>> x
    1
    >>> y
    2
    >>> z
    'www.58lxqy'

    括号扩起来也是可以的,通常建议这么做,使你的代码可读性更高:

    >>> (x,y,z)=(1,2,'www.58lxqy')
    >>> x
    1
    >>> y
    2
    >>> z
    'www.58lxqy'

    多元赋值在变量交换中的妙用:

    /*C语言中两个变量的交换*/
    tmp=x;
    x=y;
    y=tmp;

    而Python的多元赋值方式可以实现无需中间变量交换两个变量的值。

    >>>#Python中两个变量交换
    >>> (x,y)=(1,2)
    >>> x
    1
    >>> y
    2
    >>> x,y=y,x
    >>> x
    2
    >>> y
    1

    5、Python专用下划线标识符

        Python用下划线作为变量前缀和后缀制定的特殊变量。稍后我们会发现,对于程序来说,其中的有些变量是非常有用的,而其他的则是未知或者无用的。对Python中的下划线总结如下:

    • _xxx     不能用‘from module import’ 导入
    • _xxx_   系统定义名字
    • _xxx     类中的私有变量

    6、模块结构和布局

                 用模块来合理组织你的Python代码是简单又自然的方法。你应该建立一种统一且容易阅读的结构,并将它应用到每一个文件中。下面就是一种非常合理的布局:

    # (1)起始行(Unix)

    # (2)模块文档

    # (3)模块导入

    # (4)变量定义

    # (5)类定义

    # (6)函数定义

    # (7)主程序

    7、__name__指示模块应如何被加载

          Python是否有一种方法,能在运行时检测该模块是被导入还是被直接执行呢?答案就是…(掌声雷动)…没错!__name__系统变量就是正确答案

    • 如果模块是被导入,__name__的值为模块名字
    • 如果模块是被直接执行,__name__的值为‘__main__’
    #!/usr/bin/python  #起始行
    "This is a test module" #模块文档
    
    import sys         #模块导入
    import os
    
    debug=True         #(全局)变量定义
    
    class FooClass (object):     #类定义(若有)
        "Foo class"
    
        pass
    
    def test():                #函数定义(若有)
        "test function"
        foo=FooClass()
    
        if debug:
            print 'ran test(),execute as a script!'
    
    if __name__=='__main__':               #主程序
        test()

     8、相关模块和基础语法

    《Python风格指南》(Python Stytle Guide, PEP8)、《Python快速参考指南》(Python Quick Reference Guide)和《Python常见问答》(Python FAQ)都是开发者很重要的工具。另外,还有一些模块会帮助你成为一个优秀的程序员。

          调试器:pdb

          记录器:logging

          性能测试器:profile、hotshot、cProfile(最新的,C语言编写,常用来测试函数的执行时间及每次脚本执行的总时间)

    9、Python中的print方法

    print方法本身会生成NEWLINE的意思,当使用print来输出文本的内容时,通过循环可以输出每行时,就会在每行的结尾多一个换行。为解决这一问题,我们可以使用在print结尾出加上‘,’来解决这一问题,‘,’字符能够抑制print语句生成的NEWLINE,另外也可易使用字符串的strip()方法删除每行末尾的空白就可以了。

    具体代码如下:

    #        print eachLine.strip()
              print eachLine,
  • 相关阅读:
    PythonのTkinter基本原理
    使用 Word (VBA) 分割长图到多页
    如何使用 Shebang Line (Python 虚拟环境)
    将常用的 VBScript 脚本放到任务栏 (Pin VBScript to Taskbar)
    关于 VBScript 中的 CreateObject
    Windows Scripting Host (WSH) 是什么?
    Component Object Model (COM) 是什么?
    IOS 打开中文 html 文件,显示乱码的问题
    科技发展时间线(Technology Timeline)
    列置换密码
  • 原文地址:https://www.cnblogs.com/shudonghe/p/3109429.html
Copyright © 2011-2022 走看看