Python基础学习中容易忽略的东西

空行

函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。
空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。

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

type 和 isinstance

isinstance 和 type 的区别在于:

type()不会认为子类是一种父类类型。
isinstance()会认为子类是一种父类类型。

运算符

/ 实数,// 整除。
** 幂
x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
注:id() 函数用于获取对象内存地址。
is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。

字符串

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

元组

元组与列表类似,但不可修改,但可以包含可变元素比如列表(修改列表元组会改变)、变量(修改变量元组不会改变)

pass

没有实际含义 占位符

迭代器、生成器

还没弄的太明白

函数:

函数必须先定义后调用,但函数调用函数不用遵循该法则

关于参数:
类型属于对象,变量是没有类型的

a=[1,2,3]
a="Runoob"

[1,2,3] 是 List 类型,“Runoob” 是 String 类型,而变量 a 是没有类型,她仅仅是一个对象的引用(一个指针),可以是指向 List 类型对象,也可以是指向 String 类型对象。

其中strings, tuples, 和 numbers 是不可更改的对象,而 list,dict 等则是可以修改的对象。
不可变类型:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变a的值,相当于新生成了a。
可变类型:变量赋值 la=[1,2,3,4] 后再赋值 la[2]=5 则是将 list la 的第三个元素值更改,本身la没有动,只是其内部的一部分值被修改了。

不可变类型:类似 c++ 的值传递,如 整数、字符串、元组。如fun(a),传递的只是a的值,没有影响a对象本身。比如在 fun(a)内部修改 a 的值,只是修改另一个复制的对象,不会影响 a 本身。
可变类型:类似 c++ 的引用传递,如 列表,字典。如 fun(la),则是将 la 真正的传过去,修改后fun外部的la也会受影响

遍历

for k,v in dict.items():
enumerate()

待更新。。。。。

模块

读写File/OS

错误与异常

你可能感兴趣的:(Python基础学习中容易忽略的东西)