我正在尝试将名为test_dicomszip文件的目录压缩为test_dicoms.zip使用以下代码命名的zip文件:
shutil.make_archive('/home/code/test_dicoms','zip','/home/code/test_dicoms')
问题是,当我解压缩它时,所有文件都/test_dicoms/被提取到/home/code/而不是文件夹,/test_dicoms/并且所有文件都被提取到/home/code/.所以/test_dicoms/有一个文件调用foo.txt,在我压缩和解压缩foo.txt的路径之后是/home/code/foo.txt相反的/home/code/test_dicoms/foo.txt.我该如何解决?此外,我正在使用的一些目录非常大.我是否需要在代码中添加任何内容以使其成为ZIP64,或者是否足够自动地执行此操作?
以下是创建的存档中的内容:
[gwarner@jazz gwarner]$ unzip -l test_dicoms.zip
Archive: test_dicoms.zip
Length Date Time Name
--------- ---------- ----- ----
93324 09-17-2015 16:05 AAscout_b_000070
93332 09-17-2015 16:05 AAscout_b_000125
93332 09-17-2015 16:05 AAscout_b_000248
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 freesurfer 的实用程序将大量 DTI siemens DICOM 转换为 NifTi,dcm2nii但在某些文件上失败,因为它们缺少生成和文件DiffusionGradientDirection tag (0x19,0x100E)所必需的。这并不是说标签没有值,而是它们似乎根本不存在。.bvec.bval
ds[0x19,0x100E] 回溯(最近一次调用):文件“”,第 1 行,文件“/space/jazz/1/users/gwarner/anaconda/lib/python2.7/site-packages/pydicom-0.9 .9-py2.7.egg/dicom/dataset.py”,第 277 行,在getitem data_elem = dict 中。getitem (self, tag) KeyError: (0019, 100e)
我尝试添加它,但出现以下错误:
ds[0x19,0x100E].value = 'yes' 回溯(最近一次调用):文件“”,第 1 行,文件“/space/jazz/1/users/gwarner/anaconda/lib/python2.7/site -packages/pydicom-0.9.9-py2.7.egg/dicom/dataset.py”,第 277 行,在getitem data_elem = dict 中。getitem (self, tag) KeyError: (0019, 100e)
有没有办法可以手动插入这个标签?
我有一个PHP脚本应该以用户"apache"执行python脚本但是返回错误:
/transform/anaconda/bin/python: can't open file '/transform/python_code/edit_doc_with_new_demo_info.py': [Errno 13] Permission denied
对于权限edit_doc_with_new_demo_info.py的---xrwx--x. 1 apache PosixUsers 4077 Sep 18 12:14 edit_doc_with_new_demo_info.py.调用此python脚本的行是:
shell_exec('/transform/anaconda/bin/python /transform/python_code/edit_doc_with_new_demo_info.py ' . escapeshellarg($json_python_data) .' >> /transform/edit_subject_python.log 2>&1')
如果apache是python文件的所有者并且所有者具有执行权限,那么它怎么能无法打开文件?
当我使用foo = np.empty(1)结果数组创建一个空的numpy数组时,包含一个float64:
>>> foo = np.empty(1)
>>> foo
array([ 0.])
>>> type(foo[0])
<type 'numpy.float64'>
Run Code Online (Sandbox Code Playgroud)
为什么不回来array([])?