gpt4 book ai didi

python - Jython Shutil(Windows、Linux、J/Python 之间的不同行为)!

转载 作者:太空宇宙 更新时间:2023-11-04 11:12:20 24 4
gpt4 key购买 nike

我正在使用 Jython,通过 Topspin(在 Java 上运行的 NMR 软件)来运行以下代码:

home = "C:/Bruker/TopSpin3.2"
ep_zges_outdir = os.path.abspath(home + "/data/Testshutil/nmr/zges/")
data = ["EP_Saliva_140131_raw", "1", "1", "C:/Bruker/TopSpin3.2/data/Testshutil/nmr"]
ep_zges_list = [["EP_Saliva_140131_raw",25,334],...]

for sample in ep_zges_list:
if data[0] == sample[0] and data[1] == str(sample[1]):
src = os.path.abspath(data[3] + "/" + data[0] + "/" + data[1])
dst = os.path.abspath(ep_zges_outdir + "/" + str(sample[2]))
shutil.copytree(src, dst)

正确的导入已经完成,当它工作时,不需要 os.path.abspath。

这在 Windows/Linux python 中以及通过在 CentOS 中运行 Jython 的相同软件完美运行。它不在 Windows 7 的软件/Jython 中运行,并产生以下错误:

Traceback (most recent call last):
File "C:/Bruker/TopSpin3.2/exp/stan/nmr/py/user/JF_test_code_8.py", line 41, in <module>
shutil.copytree(os.path.abspath(data[3] + "/" + data[0] + "/" + data[1]), os.path.abspath(ep_zges_outdir + "/" + str(sample[2])))
File "C:\Bruker\TopSpin3.2\jython\Lib\shutil.py", line 145, in copytree
raise Error, errors
shutil.Error: [u'C:\\Bruker\\TopSpin3.2\\data\\Testshutil\\nmr\\EP_Saliva_140310_raw\\1\\pdata\\1',
u'C:\\Bruker\\TopSpin3.2\\data\\Testshutil\\nmr\\zges\\334\\pdata\\1',
"[Errno 5] Input/output error: u'C:\\\\Bruker\\\\TopSpin3.2\\\\data\\\\Testshutil\\\\nmr\\\\zges\\\\334\\\\pdata\\\\1'",
u'C:\\Bruker\\TopSpin3.2\\data\\Testshutil\\nmr\\EP_Saliva_140310_raw\\1\\pdata',
u'C:\\Bruker\\TopSpin3.2\\data\\Testshutil\\nmr\\zges\\334\\pdata',
"[Errno 5] Input/output error: u'C:\\\\Bruker\\\\TopSpin3.2\\\\data\\\\Testshutil\\\\nmr\\\\zges\\\\334\\\\pdata'",
u'C:\\Bruker\\TopSpin3.2\\data\\Testshutil\\nmr\\EP_Saliva_140310_raw\\1',
u'C:\\Bruker\\TopSpin3.2\\data\\Testshutil\\nmr\\zges\\334',
"[Errno 5] Input/output error: u'C:\\\\Bruker\\\\TopSpin3.2\\\\data\\\\Testshutil\\\\nmr\\\\zges\\\\334'"]

软件版本:Windows 7 SP1 64 位。Python 2.7 32 位。在 Topspin 3.2 和 Java 1.7.0_51 上运行的 Jython 2.5.3。

CentOS 6.5 32 位在 Topspin 3.2 和 Java 1.7.0_45 上运行的 Jython 2.5.3

最佳答案

我认为这是一个 Jython 错误(一个非常烦人的错误)。见

http://bugs.jython.org/issue1872

关于python - Jython Shutil(Windows、Linux、J/Python 之间的不同行为)!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22527400/

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