Python速查手册

《Python编程——从入门到实践》(蟒蛇书)自学笔记

2022年9月8日

二、变量和简单数据类型

  • 变量命名不能使用大写字母,应该以下划线分割
  • 双引号与单引号并无区别,因此嵌套时可以更灵活
  • # 单行注释
  • 可以用==判断两个字符串是否相等

字符串

  • str.title()每个单词的首字母大写

    str.upper()把字符串全改为大写

    str.lower()把字符串全改为小写

  • f"aba aba{str1}aba{str2}"格式化字符串/f字符串:大括号中的str1str2会被替换

  • str.strip()剔除字符串两侧空白

    str.lstrip()左侧

    str.rstrip()右侧

  • **两个乘号表示乘方
  • //表示整除
  • 100_000_000可以在数字中添加下划线增加可读性
  • x, y, z = 1, 2, 3 同时给多个变量赋值
  • Python没有内置的常量类型

三、列表简介

  • 创建:list = []
  • 负下标访问:list[-1] 表示最后一个元素

方法

通用:

  • list.append(elem) 在链表末尾添加元素

  • list.insert(index, elem) 在指定位置插入元素

  • list.pop() 取列表末尾元素

    list.pop(index) 取指定位置元素

  • list.remove(elem) 删除链表中第一个指定的值

  • list.sort() 永久递增排序

    list.sort(reverse = true) 永久递减排序

  • list.reverse() 翻转列表

数字列表:

  • min(list) 最小值
  • max(list) 最大值
  • sum(list) 总和

函数

  • len(list) 确定列表长度
  • sorted(list) 临时递增排序
  • del list[index] 删除指定位置的元素

四、操作列表

range()

  • range(stop) 返回0 <= num <stop的一组数

    range(start, stop) 返回start <= num < stop的一组数

    range(start, stop, step) 步长为step

  • 返回的是一个整数序列的对象,而不是列表

    但可以用list()函数转换为列表:list(range(start, stop, step))

  • 列表解析:

    1
    2
    list = [2 ** item for item in range(1, 10)]
    # list = [2, 4, 8, 16, 32, 64, 128, 256, 512]

切片

list[start: stop: step],返回这个列表

当step为正时,start为无穷小,stop为无穷大;

当step为负时,start为无穷大,stop为无穷小;

切片详细解析

元组

tuple = (elem1, elem2, elem3,......)

  • 元组的数据不可修改
  • 当元组只有一个数据时,也需要加逗号:tuple = (elem, )

五、if语句

  • 和:and,或:or,

  • 可以连比:10 < num < 20

  • in:检查列表中是否包括某一元素

    not in:检查特定值是否不包含在列表中

  • 布尔值:True是,False否。注意首字母大写

  • for, if, else, elif 后面都需要加冒号

六、字典

形式

1
dict = {key1 : value1, key2 : value2, key3 : value3,......}
  • keyn的类型可以不一样

  • value的类型也可以不一样

  • 按照插入的顺序返回元素(可以使用sorted()函数暂时排序)

  • 打印单行

    1
    2
    print("wwwwwwww"
    "dsvsdvsvsvsv")

操作

  • 添加键值对:

    1
    dict[keyn] = valuen
  • 修改值

    1
    dict[keyn] = valuen1
  • 删除键值对

    1
    del dict[keyn]

方法

  • 访问值

    1
    dict.get(key[, default_])
  • dict.items() 返回整个键值对的列表

    1
    for key, value in dict.items():
  • dict.keys() 返回键的列表

    1
    2
    3
    for key in dict.keys():
    for key in dict:
    #二者作用相同:遍历字典时,默认遍历键
  • dict.values() 返回值的列表

    1
    2
    for value in set(dict.values()):
    # 对包含重复元素的列表调用set(),可以让python找出列表中独一无二的元素,并使用这些元素来创建一个集合

集合

形式

set = {key1, key2, key3,......}

  • 没有顺序

七、用户输入和while循环

  • 读入:

    1
    message = input("please input a message")
  • input(prompt)返回的类型为字符串,可根据需求进行转换:int()……

八、函数

传递实参

位置实参

  • 位置对应

关键字实参

1
2
3
4
def fun(num, str): 
#code

fun(num = 123, str = 'Hello')

默认值

1
2
3
4
def fun(num, str = ''): 
#code

fun(num = 123)

导入模块

倒入整个模块

1
2
import turtle
turtle.setup()

导入特定的函数

1
2
from turtle import setup,fun1,fun2...
setup()

使用as给模块指定别名

1
2
import turtle as t
t.setup()

使用as给函数指定别名

1
2
from turtle import setup as su
su()

导入模块中的所有函数

1
2
from turtle import *
setup()

九、类

  • 初始化方法:__init__()

项目二:数据可视化

遇到

1
AttributeError: module 'backend_interagg' has no attribute 'FigureCanvas'. Did you mean: 'FigureCanvasAgg'?

解决方法

1
2
3
4
5
import matplotlib as mpl
import matplotlib.pyplot as plt
mpl.use('TkAgg')

# 可用后端 [‘GTK3Agg’, ‘GTK3Cairo’, ‘MacOSX’, ‘nbAgg’, ‘Qt4Agg’, ‘Qt4Cairo’, ‘Qt5Agg’, ‘Qt5Cairo’, ‘TkAgg’, ‘TkCairo’, ‘WebAgg’, ‘WX’, ‘WXAgg’, ‘WXCairo’, ‘agg’, ‘cairo’, ‘pdf’, ‘pgf’, ‘ps’, ‘svg’, ‘template’] https://blog.csdn.net/weixin_42610531/article/details/94718670

Python速查手册
https://asxjdb.github.io/2023/06/07/python-dict/
作者
Asxjdb
发布于
2023年6月7日
许可协议