私は、コードフラグメントの違いがあるのかどうか疑問に思っています。
from urllib import request
とフラグメント
import urllib.request
とフラグメント {{{12428342}} の間に互換性があるかどうか。両者が交換可能な場合、"standard"/"preferred"の構文があれば、どちらになりますか?
ありがとうございます。
これは、インポートを参照する際にどのようにアクセスしたいかによります。
from urllib import request
# access request directly.
mine = request()
import urllib.request
# used as urllib.request
mine = urllib.request()
簡単にするために、あるいは内蔵されているものを隠さないようにするために、インポートするときに自分でエイリアスをつけることもできます。
from os import open as open_
# lets you use os.open without destroying the
# built in open() which returns file handles.
少なくともpython 2.xでは、import urllib2.urlopen
はできません。
from urllib2 import urlopen`としなければなりません。
Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import urllib2.urlopen
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named urlopen
>>> import urllib.request
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named request
>>>