Python学习笔记
Python
Python
Python入门 注释用前后三个双引号包裹,单行注释用#
1、算术运算
除法 / 自动转换成浮点数
整数除法的运算符是//
%是模除,i%j的正负符号与j相同!!!
x**y指的是x的y次方
not取非运算
用and和or进行逻辑运算
True代表1,False代表0,可以参与数值运算
大小比较可以连起来 eg.1<2<3为True
is是判断两个变量是否“引用”同一个对象,而==是判断两个对象是否含有相同的值
创建字符串可以用单引号,也可以用双引号
字符串可以使用加号形成新的字符串,常量字符串没有加号也可以连接,eg. “hello”“world”即是“helloworld”
字符串可以被当做字符列表,即“helloworld”[0],就是h列表
用len获得字符串的长度
2、变量和集合
# 你可以使用 f-strings 格式化字符串(python3.6+) name = "Reiko" f"She said her name is {name}." # => "She said her name is Reiko" # 你可以在大括号内几乎加入任何 python 表达式,表达式的结果会以字符串的形式返回 f"{name} is {len(name)} characters long." # => "Reiko is 5 characters long."
# 用 .format 来格式化字符串 "{} can be {}".format("strings", "interpolated") # 可以重复参数以节省时间 "{0} be nimble, {0} be quick, {0} jump over the {1}".format("Jack", "candle stick") # => "Jack be nimble, Jack be quick, Jack jump over the candle stick" # 如果不想数参数,可以用关键字 "{name} wants to eat {food}".format(name="Bob", food="lasagna") # => "Bob wants to eat lasagna"None是一个对象,当与None进行比较的时候不能用 ==,要用is。
# "if" 可以用作表达式,它的作用等同于 C 语言的三元运算符 "?:" "yay!" if 0 > 1 else "nay!" # => "nay!"列表:
允许修改,用的是中括号
用列表储存序列,li = [ ],创建列表时也可以同时赋给元素
li.append(1) 函数可以用来在列表最后追加元素;li.pop()可以把列表尾部的元素删除
列表还可以进行切割、取尾取头、隔一个取一个或者倒排
# 可以用三个参数的任何组合来构建切割 # li[始:终:步伐]元组:
类似于列表,但是不允许修改,用的是小括号
元素数量为1的元组,必须在元素之后加一个逗号
type((1,))就是class‘tuple’
# 可以把元组合列表解包,赋值给变量 a, b, c = (1, 2, 3) # 现在 a 是 1,b 是 2,c 是 3 # 也可以做扩展解包 a, *b, c = (1, 2, 3, 4) # 现在 a 是 1, b 是 [2, 3], c 是 4 # 元组周围的括号是可以省略的 d, e, f = 4, 5, 6 # 元组 4, 5, 6 通过解包被赋值给变量 d, e, f # 交换两个变量的值就这么简单 e, d = d, e # 现在 d 是 5,e 是 4字典:
存储映射关系,用大括号
filled_dict = {"one": 1, "two": 2, "three": 3}{key:value,key:value,...},存放是键值对
用dict[ key]来取出key对应的value
dict.keys()得出所有的键,包含在list中 得到可迭代对象
dict.values() 得出所有的值,同样用list来接收 得到可迭代对象
字典:
set表示集合,其元素都必须是不可变类型,用大括号括起来,逗号分隔,集合中的元素属性可以不同,例如,同一个集合中可以有整形、元组、列表等。
&取交集、|取并集、-取补集、^取异或集
>=判断是否是超集、<=判断是否是子集
3、流程控制和迭代器
enumerate讲一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标
循环结构
for、while
4、函数
def 定义新函数
5、模块
可以导入模块,也可以导入模块中的具体的函数,也可以倒入模块中的所有函数
用dir()查看模块中定义的函数和字段
本地文件夹的引入优先级要比Python内建库的引入优先级高
6、类
class语句创建类
类的继承
# 继承机制允许子类可以继承父类上的方法和变量。 # 我们可以把 Human 类作为一个基础类或者说叫做父类, # 然后定义一个名为 Superhero 的子类来继承父类上的比如 "species"、 "name"、 "age" 的属性 # 和比如 "sing" 、"grunt" 这样的方法,同时,也可以定义它自己独有的属性 # 基于 Python 文件模块化的特点,你可以把这个类放在独立的文件中,比如说,human.py。 # 要从别的文件导入函数,需要使用以下的语句 # from "filename-without-extension" import "function-or-class" from human import Human多重继承(继承多个父类的子类)
定义另一个类
7、高级用法
用生成器方便的写惰性运算
装饰器、一个函数作为参数传入另一个函数