gpt4 book ai didi

python - 使 urllib 与 python 2 和 3 一起工作的巧妙方法

转载 作者:太空狗 更新时间:2023-10-30 00:23:29 25 4
gpt4 key购买 nike

我正在寻找有关如何组合这两个代码片段的建议,以便它们与 python 2 和 3 一起工作。目标是使其“整洁”,理想情况下将其保持在一行并限制任何 if/else/try/except 构造。

对于 python 3.x

   import xml.etree.ElementTree as ET, urllib.request, gzip, io
url = "https://github.com/OpenExoplanetCatalogue/oec_gzip/raw/master/systems.xml.gz"
oec = ET.parse(gzip.GzipFile(fileobj=io.BytesIO(urllib.request.urlopen(url).read())))

对于 python 2.x

  import xml.etree.ElementTree as ET, urllib, gzip, io
url = "https://github.com/OpenExoplanetCatalogue/oec_gzip/raw/master/systems.xml.gz"
oec = ET.parse(gzip.GzipFile(fileobj=io.BytesIO(urllib.urlopen(url).read())))

最佳答案

如果你不想要额外的依赖,你可以简单地使用 try except block 在相同的别名下导入任一模块...:

try:
import urllib.request as urlrequest
except ImportError:
import urllib as urlrequest

url = "https://github.com/OpenExoplanetCatalogue/oec_gzip/raw/master/systems.xml.gz"
oec = ET.parse(gzip.GzipFile(fileobj=io.BytesIO(urlrequest.urlopen(url).read())))

关于python - 使 urllib 与 python 2 和 3 一起工作的巧妙方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24417160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com