目录
一、基础
1、一个python在线调试地址
https://pythontutor.com/
2、KV编程论
Python程序的要素(KV编程论):
- 内置数据类型:亲儿子 - 内置数据结构:拿手武器 - 内置函数:护卫队 - 标准库:核心部队 - 第三方库:雇佣军 - 自定义:杂牌军 - 逻辑控制语句:指导方针 - 异常处理:监督机构
二、数据类型
1、关键词
False: 布尔值,表示假。在条件表达式中用于逻辑判断。 None: 表示空值或者没有值。通常用作函数的返回值,表示没有返回任何有效对象。 True: 布尔值,表示真。在条件表达式中用于逻辑判断。 and: 逻辑运算符,用于逻辑与操作,连接两个条件,当且仅当两个条件都为真时结果才为真。 as: 在导入模块时使用,用于给模块指定别名,也可在with语句中使用。 assert: 用于在代码中进行断言检查,如果断言失败则抛出AssertionError异常。 async: 声明一个异步函数或者异步上下文管理器,用于异步编程。 await: 用于暂停异步函数的执行,等待异步操作完成并返回结果。 break: 在循环语句中使用,用于跳出当前循环。 class: 声明一个类。 continue: 在循环语句中使用,用于跳过本次循环中剩余的代码,继续下一轮循环。 def: 定义一个函数或方法。 del: 用于删除对象中的元素或属性。 elif: 在条件语句中使用,表示“else if”,用于检查多个条件。 else: 在条件语句中使用,用于指定条件不满足时执行的代码块。 except: 用于异常处理,捕获try语句块中抛出的异常。 finally: 在异常处理中使用,指定无论是否发生异常都会执行的代码块。 for: 用于循环迭代,遍历序列(如列表、元组等)或其他可迭代对象。 from: 用于从模块中导入指定的部分内容。 global: 声明在函数或其他作用域中使用全局变量。 if: 条件语句中使用,用于检查条件是否为真。 import: 导入模块或包。 in: 用于检查序列中是否包含某个值。 is: 检查两个对象是否是同一个对象,而不是值是否相等。 lambda: 创建匿名函数。 nonlocal: 声明在函数或其他作用域中使用外层(非全局)变量。 not: 逻辑运算符,对布尔值取反。 or: 逻辑运算符,用于逻辑或操作,连接两个条件,当任一条件为真时结果为真。 pass: 占位符,用于语法上需要语句但逻辑上不需要任何操作的情况。 raise: 抛出异常。 return: 从函数中返回值。 try: 异常处理中使用,尝试执行可能发生异常的代码。 while: 循环语句中使用,当条件为真时重复执行代码块。 with: 上下文管理器,简化了资源管理(如文件操作)的代码。 yield: 用于生成器函数中,暂停函数执行并返回一个值,下次调用时从暂停的位置继续执行。
2、数据类型
在 Python 中,常见的数据类型包括但不限于以下几种:
--整数(int):表示整数值,例如 1, 100, -10 等。
--浮点数(float):表示带有小数的数值,例如 3.14, -0.001 等。
--字符串(str):表示文本数据,用引号(单引号或双引号)括起来,例如 “hello”, ‘Python’ 等。
--列表(list):有序、可变的集合,用方括号括起来,例如 [1, 2, 3], [‘apple’, ‘banana’, ‘orange’] 等。
--元组(tuple):有序、不可变的集合,用圆括号括起来,例如 (1, 2, 3), (‘red’, ‘green’, ‘blue’) 等。
--字典(dict):无序的键值对集合,用花括号括起来,例如 {‘name’: ‘Alice’, ‘age’: 30}。
--集合(set):无序、不重复的元素集合,用花括号括起来,例如 {1, 2, 3}。
此外,Python 还有一些其他数据类型,如布尔型(bool)、空值(NoneType)、
3、命名规则
(1)基本规则
变量名可以包含字母(大小写均可)、数字和下划线(_),但不能以数字开头。 变量名不能使用Python关键词(如上一个回答中列出的关键词)。 变量名区分大小写,例如myVar
和myvar
是不同的变量。
(2)建议的命名约定:
使用具有描述性的变量名,以便代码的可读性和理解性。
遵循一致的命名风格,通常推荐使用小写字母和下划线来命名变量(例如my_variable
)。
如果变量名包含多个单词,可以使用下划线进行连接,而不是使用驼峰命名法(例如user_name
而不是userName
)。
4、Python3中常见的内置函数
abs(x): 返回数值 x 的绝对值。 all(iterable): 如果 iterable 中所有元素都为真(或为空),返回 True;否则返回 False。 any(iterable): 如果 iterable 中任何元素为真,则返回 True;否则返回 False。 ascii(object): 返回对象的 ASCII 表示。 bin(x): 将整数 x 转换为二进制字符串。 bool(x): 返回 x 的布尔值,False 对应于 0 或空,True 对应于非零或非空。 bytearray(): 返回一个新的 bytearray 对象。 bytes(): 返回一个新的 bytes 对象。 callable(object) 检查对象是否可调用(即是否为函数或方法)。 chr(i) 返回 Unicode 码位 i 对应的字符。 classmethod(func) 将方法转换为类方法。 compile(source, filename, mode) 将 source 编译为代码或 AST 对象。 complex(real, imag) 创建一个复数。 delattr(object, name) 删除对象的属性。 dict() 创建一个新的字典。 dir([object]) 返回对象的属性列表,或当前作用域中的变量名称列表。 divmod(a, b) 返回除法 a // b 和取余 a % b 的结果。 enumerate(iterable, start) 返回一个枚举对象,包含 iterable 的索引及其对应的值。 eval(expression, globals=None, locals=None)执行字符串表达式,并返回结果。 exec(object[, globals[, locals]]) 执行字符串或代码对象。 filter(function, iterable) 使用 function 过滤 iterable 中的元素,返回一个迭代器。 float(x) 将字符串或数字 x 转换为浮点数。 format(value, format_spec) 格式化值为指定格式的字符串。 frozenset(iterable) 创建一个不可变的集合。 getattr(object, name[, default]) 返回对象的属性值。 globals() 返回当前全局符号表的字典。 hasattr(object, name) 判断对象是否有指定的属性。 hash(object) 返回对象的哈希值。 help([object]) 返回对象的帮助信息。 hex(x) 将整数 x 转换为十六进制字符串。 id(object) 返回对象的唯一标识符。 input(prompt) 从用户获取输入,并返回作为字符串。 int(x) 将字符串或数字 x 转换为整数。 isinstance(object, classinfo) 检查对象是否为指定类或其子类的实例。 issubclass(class, classinfo) 检查一个类是否是另一个类的子类。 iter(object[, sentinel]) 返回一个迭代器对象。 len(s) 返回对象 s 的长度。 list(iterable) 创建一个列表。 locals() 返回当前局部符号表的字典。 map(function, iterable, …) 将函数应用于 iterable 的每个元素,并返回结果。 *max(iterable, [, key, default]) 返回 iterable 中的最大值。 memoryview(obj) 返回对象的内存视图。 *min(iterable, [, key, default]) 返回 iterable 中的最小值。 next(iterator, default) 返回迭代器的下一个项目。 object() 创建一个空对象。 oct(x) 将整数 x 转换为八进制字符串。 open(file, mode=‘r’, buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) 打开文件并返回文件对象。 ord© 返回 Unicode 字符 c 的整数表示。 pow(base, exp, mod=None) 返回 base 的 exp 次幂,可选地取模。 *print(objects, sep=’ ‘, end=’\n’, file=sys.stdout, flush=False)- 将对象打印到输出设备。 property(fget=None, fset=None, fdel=None, doc=None) 返回一个 property 属性。 range(stop) 返回一个范围内的整数列表。 repr(object) 返回对象的字符串表示。 reversed(seq) 返回一个反转的迭代器。 round(number[, ndigits]) 返回 number 四舍五入的值。 set(iterable) 创建一个集合。 setattr(object, name, value) 设置对象的属性值。 slice(stop) 返回一个切片对象。 *sorted(iterable, , key=None, reverse=False)对可迭代对象进行排序。 staticmethod(function) 将函数转换为静态方法。 str(object=‘’) 返回对象的字符串表示。 sum(iterable, start=0) 返回 iterable 的总和。 super([type[, object-or-type]]) 返回父类的委托。 tuple(iterable) 创建一个元组。 type(object) 返回对象的类型。 vars([object]) 返回对象的 dict 属性,或当前作用域的变量名称。 *zip(iterables) 创建一个迭代器,聚合来自每个可迭代对象的元素。
5、标准库模块(Standard Library Modules)
collections 提供额外的数据类型:deque、Counter 等。 datetime 处理日期和时间的类和函数。 functools 提供高阶函数:partial、reduce 等。 itertools 提供用于操作迭代器的函数。 math 提供数学运算函数:sqrt、sin、cos 等。 os 提供与操作系统交互的功能。 random 提供生成伪随机数的函数。 re 提供正则表达式操作。 string 提供字符串相关的常量和函数。 sys 提供对 Python 解释器的访问和控制。 time 提供时间操作的函数。 urllib 提供用于处理 URL 的功能。
三、数据结构--list
1、list表示方法
[]
2.使用list
m_list=[1,2,3,4,5,6] print(m_list) print(m_list[1])
3.增删改查
(1)增
m_list.append(7) m_list.insert(1,8)
(2)查
m_list[3] --查第4个 m_list[:5] --从第0个查起,到第6个 m_list[2:] --从第3个查起,到最后 m_list[1::6] --从第2个查起,每次查都间隔两个 m_list.count[5] --查看列表中5的数量 len(m_list) --m_list有多少个值 m_list[2]=333 --把第3个值改为333
(3)删
m_list.pop(1) --把第二个值删除
(4)改
m_list.reverse() --取反