簡體   English   中英

輸入兩個名稱相同但擴展名不同的文件

[英]Input two files with same name but different extension

我只想輸入一個,即可輸入兩個名稱相同但擴展名不同的文件:

tkMessageBox.showinfo(title="Info",message="Please input both the .rwh file")

# the filetype mask (default is all files)
mask = \
[("files","*.rwh"),
 ("All files","*.*")]

title = 'Open'                
files = askopenfilenames(initialdir=self.initial_dir, filetypes=mask,title=title)

那部分我不怎么做。 它必須通過讀取文件輸入然后通過讀取名稱來創建文件對象,以創建另一個具有相同名稱但擴展名(.row)的對象。

之后,我調用一個使用兩個文件對象的函數。

這些文件具有不同的擴展名,因為它們包含不同的信息,兩個文件都位於同一文件夾中。

os.path.splitext允許您獲取根名稱:

>>> import os

>>> filename = '/my/filename.rwh'
>>> root, ext = os.path.splitext(filename)
>>> root
'/my/filename'

>> root + '.row'
'/my/filename.row'

假設您已經知道一個文件名,例如:

file = 'test.rwh'

那么您只需將其replace為另一個文件擴展名.row

file.replace('.rwh','.row')

這給出了test.row 在具有多個.rwh值的情況下,您可以使用Peter Wood的注釋或使用例如正則表達式:

import re
file = 'test.rwh.rwh'
re.sub('.rwh$','.row',file)

返回test.rwh.row

將文件名轉換為字符串,然后使用str.join()添加文件結尾。

除非文件結尾因大小寫不同而不同,否則這應該起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM