# Import文とas
## (1)ディレクトリを '.'でつなぎ、フルパスで6-68_lesson-package(パッケージ)内のモジュールを参照する方法
#import lesson_package_6_68.utils

## (2)fromを用い、指定したパッケージ内のモジュールを参照する方法
## from lesson_package_6_68 import utils

## (3)fromでパッケージとモジュールを指定し、関数のみを参照する方法
# from lesson_package_6_68.utils import say_twice

## (4) （2）でimportしたモジュールをほかの名前で使用する方法
from lesson_package_6_68 import utils as u



print('********************************************************************')
print('(1)')

# フルパスでモジュールをimportする際の構文
# r = lesson_package_6_68.utils.say_twice('hello')
# print(r)


print('********************************************************************')
print('(2)')

# fromを使用してパッケージを指定し、モジュールを参照する際の構文
## 関数がモジュールから来たことがわかりやすい。これを使ったほうがいい
# r = utils.say_twice('hello')
# print(r)


print('********************************************************************')
print('(3)')

# fromを使用して関数のみを参照する際の構文
## 関数がどこから来たものかわからなくなる。そのためあまり好まれていない。
# r = say_twice('hello')
# print(r)

print('********************************************************************')
print('(4)')

# fromを使用してパッケージを参照する際の構文
## モジュールの名前をasで変更すると、関数がどこから来たかわからなくなるので、これもあまり使わないほうがいい
r = u.say_twice('hello')
print(r)
