Python 模块管理1 Python 模块管理

Python 模块管理

 

导入新的模块

创建一个 calculate.py 文件

print('ok')


def add(x,y): return x + y def sub(x,y): return x - y 

再创建一个 bin.py 文件调用 calculate.py 模块

import sys

import calculate           # 导入 calculate 模块, 模块会在  sys.path 中搜索

print(calculate.add(1,2)) # 调用 calculate 模块中的 add 方法,需要写成 calculate.add() print(sys.path) # 查看 pyton 搜索模块 运行结果: ok 3 ['D:\\python_script\\alex_test\\day20', 'D:\\python_script\\alex_test', 'D:\\python35\\python35.zip', 'D:\\python35\\DLLs', 'D:\\python35\\lib', 'D:\\python35', 'D:\\python35\\lib\\site-packages'] 

通过 from ... import 方法来进行调用 calculate 模块中的方法

from calculate import add,sub

print(add(1,2))             # 直接使用 add() 进行调用 运行结果: ok 3

创建别名

from calculate import add as plus         # 这里程序只能调用 plus,而 add 则会失效

# print(add(1,2)) 报 NameError: name 'add' is not defined 错误 print(plus(1,2)) 运行结果: ok 3

调用其他目录下的模块


logger.py 文件内容

def write_log():
    print("logging")

两种方式进行调用

#方法一:
from web.logger import write_log

write_log()
运行结果:
logging

#方法二:
from web import logger logger.write_log() 运行结果: logging

注意,如果模块下面的 __ init__ .py 的文件内容,import 和 from...import 都会执行 __ init__ .py 中的语句。

导入模块的时候注意模块的路径

import os,sys
BABE_DIR = os.path.dirname(os.path.dirname(__file__))
# 通过 __file__ 获取当前执行文件的路径及名称
# 通过 os.path.dirname() 获得上一级的路径

sys.path.append(BABE_DIR) # 系统执行环境添加需要的路径 print(sys.path)

导入新的模块

创建一个 calculate.py 文件

print('ok')


def add(x,y): return x + y def sub(x,y): return x - y 

再创建一个 bin.py 文件调用 calculate.py 模块

import sys

import calculate           # 导入 calculate 模块, 模块会在  sys.path 中搜索

print(calculate.add(1,2)) # 调用 calculate 模块中的 add 方法,需要写成 calculate.add() print(sys.path) # 查看 pyton 搜索模块 运行结果: ok 3 ['D:\\python_script\\alex_test\\day20', 'D:\\python_script\\alex_test', 'D:\\python35\\python35.zip', 'D:\\python35\\DLLs', 'D:\\python35\\lib', 'D:\\python35', 'D:\\python35\\lib\\site-packages'] 

通过 from ... import 方法来进行调用 calculate 模块中的方法

from calculate import add,sub

print(add(1,2))             # 直接使用 add() 进行调用 运行结果: ok 3

创建别名

from calculate import add as plus         # 这里程序只能调用 plus,而 add 则会失效

# print(add(1,2)) 报 NameError: name 'add' is not defined 错误 print(plus(1,2)) 运行结果: ok 3

调用其他目录下的模块


logger.py 文件内容

def write_log():
    print("logging")

两种方式进行调用

#方法一:
from web.logger import write_log

write_log()
运行结果:
logging

#方法二:
from web import logger logger.write_log() 运行结果: logging

注意,如果模块下面的 __ init__ .py 的文件内容,import 和 from...import 都会执行 __ init__ .py 中的语句。

导入模块的时候注意模块的路径

import os,sys
BABE_DIR = os.path.dirname(os.path.dirname(__file__))
# 通过 __file__ 获取当前执行文件的路径及名称
# 通过 os.path.dirname() 获得上一级的路径

sys.path.append(BABE_DIR) # 系统执行环境添加需要的路径 print(sys.path)

猜你喜欢

转载自www.cnblogs.com/di2wu/p/8971811.html