1.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# │ ├── module3.py
# module2.py
from .module3 import greet
print(greet())
# module3.py
def greet():
return "Hello from module3"
2.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── module1.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# module2.py
from ..module1 import add
print(add(10, 20))
# module1.py
def add(a, b):
return a + b
3.
次のコードで、相対インポートを使用して2階層上のディレクトリからモジュールをインポートする正しい方法を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── module1.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── subsubpackage/
# │ │ ├── __init__.py
# │ │ ├── module2.py
# module2.py から module1 をインポートする
4.
次のコードで、module3.py内の関数funcを相対インポートでインポートする正しい方法を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── module3.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module4.py
# module4.py から module3.py の func をインポートする
5.
次のコードの出力結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── module1.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# module2.py
from ..module1 import greet
print(greet())
# module1.py
def greet():
return "Hello from module1!"
6.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── module1.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# module2.py
from ..module1 import func
print(func(5, 7))
# module1.py
def func(a, b):
return a + b
7.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# │ ├── module3.py
# module2.py
from .module3 import greet
from .. import module1
print(greet(), module1.__name__)
# module3.py
def greet():
return "Hello from module3"
# module1.py
def info():
return "Info from module1"
8.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# │ ├── module3.py
# module2.py
from ..subpackage.module3 import greet
print(greet())
# module3.py
def greet():
return "Hello from module3"
9.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── module1.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# module2.py
from .. import module1 as mod
print(mod.__name__)
10.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# module2.py
from .. import module1
print(module1.__name__)
# module1.py
print("Module1 imported")
11.
次のコードにおいて、相対インポートを使用して親パッケージ内のモジュールをインポートする正しい方法を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── module1.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# module2.py から module1 をインポートする
12.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── module1.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# module2.py
from ..module1 import greet
print(__name__)
# module1.py
def greet():
return "Greetings from module1"
13.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# │ ├── module3.py
# module2.py
from ..subpackage.module3 import greet
print(greet())
# module3.py
def greet():
return "Greetings from module3!"
14.
次のコードで、相対インポートが失敗する理由を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── module1.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# module2.py
from ..module1 import greet
15.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── module1.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# module2.py
from .. import module1
print(module1)
16.
次のコードにおいて、相対インポートを使用して同じディレクトリ内の別モジュールをインポートする正しい方法を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module1.py
# │ ├── module2.py
# module2.py から module1.py をインポートする
17.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# │ ├── module3.py
# module2.py
from . import module3
print(hasattr(module3, 'greet'))
# module3.py
def greet():
return "Hello from module3"
18.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# │ ├── module3.py
# module2.py
from .module3 import greet as hello
print(hello())
# module3.py
def greet():
return "Hello from module3"
19.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# │ ├── module3.py
# module2.py
from . import module3
print(dir(module3))
# module3.py
def greet():
return "Hello from module3"
class Greeter:
def say_hello(self):
return "Hello, world!"
20.
次のコードの実行結果を選んでください。
# パッケージ構造:
# package/
# ├── __init__.py
# ├── subpackage/
# │ ├── __init__.py
# │ ├── module2.py
# │ ├── module3.py
# module2.py
from . import module3 as mod
print(mod.__file__)