python代码执行顺序可以查看吗_python 代码执行顺序

Python代码在执行过程中,遵循下面的基本原则:

普通语句,直接执行;

碰到函数,将函数体载入内存,并不直接执行

碰到类,执行类内部的普通语句,但是类的方法只载入,不执行

碰到if、for等控制语句,按相应控制流程执行

碰到@,break,continue等,按规定语法执行

碰到函数、方法调用等,转而执行函数内部代码,执行完毕继续执行原有顺序代码

import os # 1

print(' time module start') # 2

class ClassOne():

print(' ClassOne body') # 3

def __init__(self): # 10

print(' ClassOne.__init__')

def __del__(self):

print(' ClassOne.__del__') # 101

def method_x(self): # 12

print(' ClassOne.method_x')

class ClassTwo(object):

print(' ClassTwo body') # 4

class ClassThree():

print(' ClassThree body') # 5

def method_y(self): # 16

print(' ClassThree.method_y')

class ClassFour(ClassThree):

print(' ClassFour body') # 6

def func():

print(" function func")

if __name__ == '__main__': # 7

print(' ClassOne tests', 30 * '.') # 8

one = ClassOne() # 9

one.method_x() # 11

print(' ClassThree tests', 30 * '.') # 13

three = ClassThree() # 14

three.method_y() # 15

print(' ClassFour tests', 30 * '.') # 17

four = ClassFour()

four.method_y()

print(' evaltime module end') # 100

首先执行#1的import语句

执行#2的打印语句

ClassOne、ClassThree和ClassFour的类定义执行过程中,分别打印#3、#4、#5、#6四句话,但是其中的方法并不执行,仅仅是载入内存

碰到#7的if name == 'main':,判断为True,于是执行if内部的代码

执行#8的print语句

执行#9,实例化一个ClassOne的对象

执行#10的初始化方法,打印一条语句

返回执行#11的menthod_x调用

返回类的定义体,找到#12,执行方法,打印语句

再返回#13处,打印

执行#14的实例化

ClassThree没有自定义初始化方法,接着执行#15

回到类里找到#16的方法,执行打印语句

执行#17

......后面不再详述

执行完最后的#100的打印语句后,按理说程序应该终止退出了,但由于ClassOne这个类定义了__del__方法,还要在最后执行它内部的代码#101这条打印语句。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值