Python 知识点总结

一、基础语法

  • 标识符
  • python保留字
  • 注释 多行注释可以用多个 # 号,还有 ‘’’ 和 “”":
  • 行与缩进
  • 多行语句 反斜杠(\)
  • 数字类型 int, bool, float, complex(复数)
  • 字符串
  • python中单引号和双引号使用完全相同。
  • 使用三引号(’’'或""")可以指定一个多行字符串。
  • 转义符 ‘’
  • 反斜杠可以用来转义,使用r可以让反斜杠不发生转义。。 如 r"this is a line with \n" 则\n会显示,并不是换行。
  • 按字面意义级联字符串,如"this " "is " "string"会被自动转换为this is string。
  • 字符串可以用 + 运算符连接在一起,用 * 运算符重复。
  • Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。
  • Python中的字符串不能改变。
  • Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。
  • 字符串的截取的语法格式如下:变量[头下标:尾下标:步长]
  • 空行
  • 函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。
  • 空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。
  • 记住:空行也是程序代码的一部分。
  • 同一行显示多条语句 Python可以在同一行中使用多条语句,语句之间使用分号(;)分割。
  • print 输出 print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=""
  • import 与 from…import
  • 将整个模块(somemodule)导入,格式为: import somemodule
  • 从某个模块中导入某个函数,格式为: from somemodule import somefunction
  • 将某个模块中的全部函数导入,格式为: from somemodule import *

Python3 基本数据类型

Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。

  • 多个变量赋值
    a = b = c = 1
    a, b, c = 1, 2, “runoob”

  • 标准数据类型
    Python3 中有六个标准的数据类型:

    • Number(数字)
    • String(字符串)
    • Tuple(元组)
    • List(列表)
    • Set(集合)
    • Dictionary(字典)
  • Python3 的六个标准数据类型中:
    不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
    可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

  • Number数值运算

    >>> 5 + 4  # 加法
    9
    >>> 4.3 - 2 # 减法
    2.3
    >>> 3 * 7  # 乘法
    21
    >>> 2 / 4  # 除法,得到一个浮点数
    0.5
    >>> 2 // 4 # 除法,得到一个整数
    0
    >>> 17 % 3 # 取余
    2
    >>> 2 ** 5 # 乘方
    32
    

    1、Python可以同时为多个变量赋值,如a, b = 1, 2。
    2、一个变量可以通过赋值指向不同类型的对象。
    3、数值的除法包含两个运算符:/ 返回一个浮点数,// 返回一个整数。
    4、在混合计算时,Python会把整型转换成为浮点数。
    5、Python还支持复数,复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型

  • String(字符串)
    字符串的截取的语法格式如下:

    变量[头下标:尾下标]

    索引值以 0 为开始值,-1 为从末尾的开始位置。
    Python 知识点总结_第1张图片
    加号 + 是字符串的连接符, 星号 * 表示复制当前字符串,与之结合的数字为复制的次数。

  • Python 使用反斜杠 \ 转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串:

    >>> print('Ru\noob')
    Ru
    oob
    >>> print(r'Ru\noob')
    Ru\noob
    >>>
    

    另外,反斜杠()可以作为续行符,表示下一行是上一行的延续。也可以使用 “”"…""" 或者 ‘’’…’’’ 跨越多行。

    注意,Python 没有单独的字符类型,一个字符就是长度为1的字符串。

    与 C 字符串不同的是,Python 字符串不能被改变。向一个索引位置赋值,比如word[0] = 'm’会导致错误。

  • List(列表)
    List(列表) 是 Python 中使用最频繁的数据类型。

    1、List写在方括号之间,元素用逗号隔开。
    2、和字符串一样,list可以被索引和切片。
    3、List可以使用+操作符进行拼接。
    4、List中的元素是可以改变的。

    Python 列表截取可以接收第三个参数,参数作用是截取的步长,以下实例在索引 1 到索引 4 的位置并设置为步长为 2(间隔一个位置)来截取字符串:
    Python 知识点总结_第2张图片
    如果第三个参数为负数表示逆向读取,以下实例用于翻转字符串:

    # 第三个参数为步长,-1 表示逆向
    inputWords=inputWords[-1::-1]
    
  • Tuple(元组)
    元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。
    元组中的元素类型也可以不相同

    tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2  )
    tinytuple = (123, 'runoob')
    
    print (tuple)             # 输出完整元组
    print (tuple[0])          # 输出元组的第一个元素
    print (tuple[1:3])        # 输出从第二个元素开始到第三个元素
    print (tuple[2:])         # 输出从第三个元素开始的所有元素
    print (tinytuple * 2)     # 输出两次元组
    print (tuple + tinytuple) # 连接元组
    

    以上实例输出结果:

    ('abcd', 786, 2.23, 'runoob', 70.2)
    abcd
    (786, 2.23)
    (2.23, 'runoob', 70.2)
    (123, 'runoob', 123, 'runoob')
    ('abcd', 786, 2.23, 'runoob', 70.2, 123, 'runoob')
    

    虽然tuple的元素不可改变,但它可以包含可变的对象,比如list列表。

    构造包含 0 个或 1 个元素的元组比较特殊,所以有一些额外的语法规则:

    tup1 = ()    # 空元组
    tup2 = (20,) # 一个元素,需要在元素后添加逗号
    
  • Set(集合)
    集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。

    基本功能是进行成员关系测试和删除重复元素。

    可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

    # set可以进行集合运算
    a = set('abracadabra')
    b = set('alacazam')
    
    print(a)
    
    print(a - b)     # a 和 b 的差集
    
    print(a | b)     # a 和 b 的并集
    
    print(a & b)     # a 和 b 的交集
    
    print(a ^ b)     # a 和 b 中不同时存在的元素
    
    {
           'Zhihu', 'Baidu', 'Taobao', 'Runoob', 'Google', 'Facebook'}
    Runoob 在集合中
    {
           'b', 'c', 'a', 'r', 'd'}
    {
           'r', 'b', 'd'}
    {
           'b', 'c', 'a', 'z', 'm', 'r', 'l', 'd'}
    {
           'c', 'a'}
    {
           'z', 'b', 'm', 'r', 'l', 'd'}
    
  • Dictionary(字典)
    列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

    字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。

    键(key)必须使用不可变类型。

    在同一个字典中,键(key)必须是唯一的。

    构造函数 dict() 可以直接从键值对序列中构建字典如下:

    >>> dict([('Runoob', 1), ('Google', 2), ('Taobao', 3)])
    {
           'Runoob': 1, 'Google': 2, 'Taobao': 3}
    >>> {
           x: x**2 for x in (2, 4, 6)}
    {
           2: 4, 4: 16, 6: 36}
    >>> dict(Runoob=1, Google=2, Taobao=3)
    {
           'Runoob': 1, 'Google': 2, 'Taobao': 3}
    >>>
    

    另外,字典类型也有一些内置的函数,例如clear()、keys()、values()等。

    注意:
    1、字典是一种映射类型,它的元素是键值对。
    2、字典的关键字必须为不可变类型,且不能重复。
    3、创建空字典使用 { }。

  • Python数据类型转换
    Python 知识点总结_第3张图片

  • Python3 运算符
    Python 语言支持以下类型的运算符:

    • 算术运算符
    • 比较(关系)运算符
    • 赋值运算符
    • 逻辑运算符
    • 位运算符
    • 成员运算符
    • 身份运算符
    • 运算符优先级
  • Python逻辑运算符
    Python 知识点总结_第4张图片

  • Python成员运算符
    在这里插入图片描述

    if ( a in list ):
       print ("1 - 变量 a 在给定的列表中 list 中")
    else:
       print ("1 - 变量 a 不在给定的列表中 list 中")
     
    if ( b not in list ):
       print ("2 - 变量 b 不在给定的列表中 list 中")
    else:
       print ("2 - 变量 b 在给定的列表中 list 中")
    
  • Python身份运算符
    身份运算符用于比较两个对象的存储单元
    Python 知识点总结_第5张图片
    is 与 == 区别:
    is 用于判断两个变量引用对象是否为同一个,== 用于判断引用变量的值是否相等。

  • Python字符串格式化
    Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。

    print ("我叫 %s 今年 %d 岁!" % ('小明', 10))
    
    我叫 小明 今年 10 岁!
    
  • f-string
    f-string 是 python3.6 之后版本添加的,称之为字面量格式化字符串,是新的格式化字符串的语法。
    之前我们习惯用百分号 (%):

    >>> name = 'Runoob'
    >>> 'Hello %s' % name
    'Hello Runoob'
    

    f-string 格式化字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去,实例如下:

    >>> name = 'Runoob'
    >>> f'Hello {name}'  # 替换变量
    'Hello Runoob'
    >>> f'{1+2}'         # 使用表达式
    '3'
    
    >>> w = {
           'name': 'Runoob', 'url': 'www.runoob.com'}
    >>> f'{w["name"]}: {w["url"]}'
    'Runoob: www.runoob.com'
    

    用了这种方式明显更简单了,不用再去判断使用 %s,还是 %d。

    在 Python 3.8 的版本中可以使用 = 符号来拼接运算表达式与结果:

    >>> x = 1
    >>> print(f'{x+1}')   # Python 3.6
    2
    
    >>> x = 1
    >>> print(f'{x+1=}')   # Python 3.8
    'x+1=2'
    

你可能感兴趣的:(人工智能,python)