一.动态语言特性:python、javascript、php等
静态语言在代码运行过程中不允许动态添加、删除属性和方法,而动态语言在代码运行过程中允许动态的添加、删除属性和方法
#python就是动态语言,允许在代码运行的过程中去添加、删除属性或者方法
class Demo(object):
def __init__(self):
self.name="python"
self.age=17
if __name__=="__main__":
u1=Demo()
print(u1.name)
print(u1.age)
u1.gender="女" #向对象里添加gender属性
print(u1.gender) #输出gender属性值
del u1.name #或者 delattr(u1,"name")
print(u1.name) # 报错,因为已经删除了
结果如下:
Traceback (most recent call last):
File "G:/Python/code/code/day14/动态语言特性.py", line 13, in <module>
print(u1.name)# 报错,因为已经删除了
AttributeError: 'Demo' object has no attribute 'name'
python
17
女
二.垃圾回收机制:python中以引用计数为主,以分代收集和标记清除为辅。
三.系统编程:多任务、多进程、多线程、协程
四.网络编程(套接字编程socket):TCP、UDP
五.pep8编码规范:编码规范旨在改善Python 代码的可读性
1.每级缩进用 4 个空格。
2.右边括号也可以另起一行。有两种格式,建议第 2 种
第一种格式:右括号不回退,不推荐
my_list = [
1, 2, 3,
4, 5, 6,
]
第一种格式:右括号回退,推荐
my_list = [
1, 2, 3,
4, 5, 6,
]
3.空格或 Tab?
• 空格是首选的缩进方法。
• Tab 仅仅在已经使用 tab 缩进的代码中为了保持一致性而使用。
• Python 3 中不允许混合使用 Tab 和空格缩进。
• Python 2 的包含空格与 Tab 和空格缩进的应该全部转为空格缩进
4.最大行宽为 79 字符
5.空行
• 两行空行分割顶层函数和类的定义。
• 类的方法定义用单个空行分割。
• 额外的空行可以必要的时候用于分割不同的函数组,但是要尽量节约使用。
• 额外的空行可以必要的时候在函数中用于分割不同的逻辑块,但是要尽量节约使用
6.源文件编码:使用 UTF-8
7.导入模块放在在单独行
8.通配符导入(from import *)应该避免
9.单引号字符串和双引号字符串都是相同的。注意尽量避免在字符串中的反斜杠以提高可读性。
10.括号里边避免空格
11.逗号,冒号,分号之前避免空格
12.索引操作中的冒号前后要有同样的空格(一个空格或者没有空格,建议是没有
13.函数调用的左括号之前不能有空格
14.赋值等操作符前后不能因为对齐而添加多个空格
15.二元运算符两边放置一个空格
16.关键字参数和默认值参数的前后不要加空格
17.通常不推荐复合语句
18.决不要用字符’l’(小写字母 el),‘O’(大写字母 oh),或 ‘I’(大写字母 eye) 作为单个字符的变量名
19.模块名要简短,全部用小写字母,可使用下划线以提高可读性。包名和模块名类似,但不推荐使用下划线
六.代码调试:断点调试
pycharm中的步骤:
1、 设置断点
2、 shift+f9 开始调试
3、 光标就在断点处停了。这一行没有运行的
4、 下一行:f8
5、 进入方法:f7
6、 跳到下一个断点:alt+f9
7、 进入方法,跳出这一步,shift+f8