Python3快速入门(一)

作者: Python来了 | 来源:发表于2019-01-02 16:43 被阅读4次

    简介

    Python 是一种高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python 由 Guido van Rossum 于 1989 年底在荷兰国家数学和计算机科学研究所发明,第一个公开发行版发行于 1991 年。

    特点

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

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

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

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

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

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

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

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

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

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

    11.面向对象:Python 是强面向对象的语言,程序中任何内容统称为对象,包括数字、字符串、函数等。

    基础语法

    运行 Python

    1.交互式解释器
    在命令行窗口执行python后,进入 Python 的交互式解释器。exit()Ctrl + D 组合键退出交互式解释器。

    2.命令行脚本
    在命令行窗口执行python script-file.py,以执行 Python 脚本文件。

    3.指定解释器
    如果在 Python 脚本文件首行输入#!/usr/bin/env python,那么可以在命令行窗口中执行/path/to/script-file.py以执行该脚本文件。

    注:该方法不支持 Windows 环境。

    编码

    默认情况下,3.x 源码文件都是 UTF-8 编码,字符串都是 Unicode 字符。也可以手动指定文件编码:

    # -*- coding: utf-8 -*-
    

    或者

    # encoding: utf-8
    

    注意: 该行标注必须位于文件第一行

    标识符

    1.第一个字符必须是英文字母或下划线_
    2.标识符的其他的部分由字母、数字和下划线组成。
    3.标识符对大小写敏感。
    注:从 3.x 开始,非 ASCII 标识符也是允许的,但不建议。

    保留字

    保留字即关键字,我们不能把它们用作任何标识符名称。Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:

    >>> import keyword
    >>> keyword.kwlist
    ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
    

    注释

    单行注释采用#,多行注释采用'''"""

    # 这是单行注释
    
    '''
    这是多行注释
    这是多行注释
    '''
    
    """
    这也是多行注释
    这也是多行注释
    """
    

    行与缩进

    Python 最具特色的就是使用缩进来表示代码块,不需要使用大括号 {}
    缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。缩进不一致,会导致运行错误。

    多行语句

    Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠\来实现多行语句。

    total = item_one + \
            item_two + \
            item_three
    

    [],{}, 或() 中的多行语句,不需要使用反斜杠\

    空行

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

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

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

    等待用户输入

    input函数可以实现等待并接收命令行中的用户输入。

    content = input("\n\n请输入点东西并按 Enter 键\n")
    print(content)
    

    同一行写多条语句

    Python 可以在同一行中使用多条语句,语句之间使用分号;分割。

    import sys; x = 'hello world'; sys.stdout.write(x + '\n')
    

    多个语句构成代码组

    缩进相同的一组语句构成一个代码块,我们称之代码组。

    ifwhiledefclass这样的复合语句,首行以关键字开始,以冒号:结束,该行之后的一行或多行代码构成代码组。

    我们将首行及后面的代码组称为一个子句(clause)。

    print 输出

    print 默认输出是换行的,如果要实现不换行需要在变量末尾加上end=""或别的非换行符字符串:

    print('123') # 默认换行
    print('123', end = "") # 不换行
    

    import 与 from...import

    在 Python 用import 或者 from...import 来导入相应的模块。

    将整个模块导入,格式为:import module_name

    从某个模块中导入某个函数,格式为:from module_name import func1

    从某个模块中导入多个函数,格式为:from module_name import func1, func2, func3

    将某个模块中的全部函数导入,格式为:from module_name import *

    运算符

    算术运算符

    运算符 描述
    +
    -
    *
    /
    % 取模
    **
    // 取整除

    比较运算符

    运算符 描述
    == 等于
    != 不等于
    > 大于
    < 小于
    >= 大于等于
    <= 小于等于

    赋值运算符

    运算符 描述
    = 简单的赋值运算符
    += 加法赋值运算符
    -= 减法赋值运算符
    *= 乘法赋值运算符
    /= 除法赋值运算符
    %= 取模赋值运算符
    **= 幂赋值运算符
    //= 取整除赋值运算符

    位运算符

    运算符 描述
    & 按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0
    按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1
    ^ 按位异或运算符:当两对应的二进位相异时,结果为1
    ~ 按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1。~x 类似于 -x-1
    << 左移动运算符:运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0
    >> 右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数

    逻辑运算符

    运算符 逻辑表达式 描述
    and x and y 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值
    or x or y 布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值
    not not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True

    成员运算符

    运算符 描述
    in 如果在指定的序列中找到值返回 True,否则返回 False
    not in 如果在指定的序列中没有找到值返回 True,否则返回 False

    身份运算符

    运算符 描述 实例
    is is 是判断两个标识符是不是引用自一个对象 x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
    is not is not 是判断两个标识符是不是引用自不同对象 x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False

    运算符优先级

    运算符 描述
    (expressions...), [expressions...], {key: value...}, {expressions...} 表示绑定或元组、表示列表、表示字典、表示集合
    x[index], x[index:index], x(arguments...), x.attribute 下标、切片、调用、属性引用
    ** 指数 (最高优先级)
    ~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
    * / % // 乘,除,取模和取整除
    + - 加法减法
    >> << 右移,左移运算符
    & 位 'AND'
    ^ 位运算符
    <= < > >= 比较运算符
    <> == != 等于运算符
    = %= /= //= -= += *= **= 赋值运算符
    is is not 身份运算符
    in not in 成员运算符
    and or not 逻辑运算符
    if- else 条件表达式
    lambda Lambda 表达式

    具有相同优先级的运算符将从左至右的方式依次进行。用小括号()可以改变运算顺序。

    变量

    变量在使用前必须先"定义"(即赋予变量一个值),否则会报错:

    >>> name
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    NameError: name 'name' is not defined
    

    未完待续。。。


    码.png

    欢迎关注我的微信公众号:PythonWork,500g学习资料免费领取!

    相关文章

      网友评论

        本文标题:Python3快速入门(一)

        本文链接:https://www.haomeiwen.com/subject/vcnzlqtx.html