模块,name属性,sys模块

本文介绍了Python的模块和包,重点讲解了__name__属性,当模块自身执行时__name__为__main__,否则为模块名,常作为程序入口。还介绍了sys模块,包括sys.argv获取命令行参数、sys.platform获取执行环境平台、sys.path查找第三方扩展模块,最后提及安装第三方模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

模块

 

 

 

 

 

name属性

 

模块是一个可执行的.py文件,一个模块被另一个程序引入,若在引用的时候不想让模块中的有些方法执行.这时候我们就需要使用name属性去处理.

 

创建一个say2.py文件

 

#!/user/bin/env python

#encoding=utf-8

 

#作为模块执行

height = 180

weight = 60

def sayHello():

print("hello, nice to meet you!")

def sayGood():

print("you are a good man!")

def sayBey():

print("see you litter")

#正常执行

#每一个模块都有一个__name__属性,当其值等于"__main__"时,表明该模块自身在执行,否则被引入了其他文件

#若当前文件为程序的入口文件,则__name__属性的值为__main__

if __name__ == "__main__":

sayHello()

sayGood()

print(__name__)

else:

print(__name__)

 

以后的代码可以这么写:

 

def main():

pass

 

#其他函数

 

if __name__ == "__main__":

main()

 

总结:

1.__name__这个系统变量显示了当前模块执行过程中的名称,如果当前程序运行在当前模块中,则__name__的名称就是__main__,如果不是,则为这个模块的名称.

2.__name__一般作为函数的入口,尤其在大型工程中,常常有if __name__ == "__mian__":来表明整个工程开始运行的入口.

 

sys模块

 

1.4.1 sys.argv

 

sys.argv 获取当前正在执行的命令行参数的参数列表

import sys

#实现从程序外部向程序传递参数

print(sys.argv)

#当前程序名

sys.argv[0]

#第一个参数

sys.argv[1]

 

1.4.2 sys.platform

 

获取当前执行环境的平台

 

#mac

>>> import sys

>>> sys.platform

'darwin'

 

1.4.3 sys.path

 

path是一个目录列表,供python从中查找第三方扩展模块,在python启动时,sys.path根据内建规则,PATHPATH变量进行初始化

 

>>> import sys

>>> sys.path

['', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python36.zip', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/lib-dynload', '/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages']

安装第三方模块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值