我有一个不同语言的单词列表及其英文翻译:
#;Eng;Spanish;
1;yes;si;
2;no;ningun;
3;question;cuestión;
对于所有这些单词(或词条),我有一个关于如何发音的音频文件(来自Forvo)。音频文件用语言和“#”值命名。因此,spanish1.m4a、spanish2.m4a、spanish3.m4a等
现在,我想按如下方式重命名该文件:yes-si-1.m4a
import pandas as pd
import os
os.chdir('/Users/user/Desktop/audio')
df = pd.read_csv('hebrew.csv', delimiter=';')
Row = (df['#']) #line number
Eng = (df['Eng']) #English trans
HebF = (df['HebF']) #Feminine
HebM = (df['HebM']) #Masculine
for filename in os.listdir():
oldName = os.path.basename(filename)
num = oldName.strip('hebrew')
现在我想用If语句。如果Row等于Num,则将文件名更改为Eng+HebF+Row+“.m4a”
如何解决这个问题?你知道吗
你的方向是对的。要解决的两个主要问题是:
下面的代码实现了OP中西班牙语csv示例所需的功能,重命名了文件
spanish1.m4a
、spanish2.m4a
和spanish3.m4a
。请注意:1)所有文件(代码、csv和.m4a文件)应在同一目录下
2)我正在使用f-strings来构建文件名字符串-希望从代码中可以看到足够明显的格式
3)为了使代码能够处理其他语言的文件,您需要进行一些重构。你知道吗
对于这个任务来说,使用
pandas
是一种过分的做法,但我不想太多地更改您的代码结构。如果你有任何疑问,请告诉我。你知道吗请在尝试此操作之前备份您的文件
为什么使用Python甚至
pandas
是因为您可以只使用awk
:这将根据您的规则重命名
spanish#.m4a
文件。您可以将相同的方法应用于hebrew
问题。你知道吗相关问题 更多 >
编程相关推荐