茨の道も一歩から

インフラ構築からプログラミング(Python・JavaScript)までITに関するブログです。

Python入門:モジュール

Module

ユーザ権限のパッケージインストール先を確認

import site

site.getusersitepackages()

Pythonの実行パス

import sys

sys.executable

カレントディレクトリのパス追加

import os
import sys

sys.path.append(os.curdir)
import module_a

パス調査(Path().resolve(): 絶対パス)

print(Path(__file__))
# main.py

print(Path(__file__).resolve())
# C:\Dev\workspace\main.py

print(Path())
# .

print(Path().resolve())
# C:\Dev\workspace

print(os.curdir)
# .

print(Path(os.curdir).resolve())
# C:\Dev\workspace

print(sys.path)
# ['C:\\Dev\\workspace', 'C:\\Python38\\python38.zip', 'C:\\Python38\\DLLs', 'C:\\Python38\\lib', 'C:\\Python38', 'C:\\Python38\\lib\\site-packages']

Module その1

module_b.py

def run():
    print('run: Module_B.')

module_a.py

import module_b

def run():
    print('run: Module_A.')
    module_b.run()

main1.py

import module_a

module_a.run()
module_a.module_b.run()
module_b.run() # Error

実行結果

>python main1.py
run: Module_A.                                                                                                                          
run: Module_B.
run: Module_B.
Traceback (most recent call last):                                                                                                      
  File "main1.py", line 7, in <module>                                                                                                   
    module_b.run()
NameError: name 'module_b' is not defined