def update_stu_score(t_name,s_name,score):
stuscores[s_name]=score
add_stu_score(“admin”,”Tom”,100)
print(stuscores)
update_stu_score(“admin”,”Tom”,95)
print(stuscores)
add_stu_score(“derek”,”David”,97)
print(stuscores)
1.3 面向对象
一个 Python 项目可以创建多个包,一个包可以包含多个包或创建多个模块,一个模块是一个以“.py”结尾的
Python 文件,在一个模块中可以定义多个类和函数等。
包与普通文件夹的区别:包内会创建一个“__init__.py”文件来标识它使一个包。
当一个包或包下模块被导入时,__init__.py 会被 Python 解释器自动调用执行。
模块之间使用“包名.模块名”区分
模块中引入模块:
1.import model_name[,……]
引入模块
2.from model_name import func/class[,……]
引入模块中的指定函数或类等
Python 是脚本语言(动态语言),没有编译过程,不需要将程序编译成二进制代码再运行,而是解释器对代
码文件逐行执行。
Python 文件中的__name__是一个入口变量,文件中返回值为“__main__”,被其他模块导入时返回值为该文件
名,并且导入时会执行代码,为了避免不必要的代码执行,可以把不想要导入模块执行的代码写在 if
__name__ == “__main__”: 下,作为源码文件的入口,相当于 java 中的 main 方法。用例如下:
test_model.py 源码文件内容如下:
def test_info():
print(“test_info 正在运行,__name__值={}”.format(__name__))
if __name__ == “__main__”:
test_info()
__name__变量.py 源码文件内容如下:
import test_model
def info():
print(“当前正在运行,__name__值={}”.format(__name__))
print(“-”*10)
info()
test_model.test_info()
运行结果如下:
----------
当前正在运行,__name__值=__main__
test__info 正在运行,__name__值=test_model