gpt4 book ai didi

python - 如何在 opennmt-py 中将字符串转换为路径

转载 作者:行者123 更新时间:2023-12-03 16:35:08 33 4
gpt4 key购买 nike

我将 opennmt-py 用于 MT 并且在代码中任何时候我想设置一个路径我必须写所有目录并且当我有长目录时它不好看。有什么方法可以将字符串设置为主目录,只需将文件名添加到末尾即可。我使用 google colab 来训练模型代码如下:

!onmt_preprocess  \\
-train_src //content//drive//My\ Drive//Colab\ Notebooks//NLP//spring99//CA6//Corpora//En2Fa-Translation//train.en \\
-train_tgt //content//drive//My\ Drive//Colab\ Notebooks//NLP//spring99//CA6//Corpora//En2Fa-Translation//train.fa \\
-valid_src //content//drive//My\ Drive//Colab\ Notebooks//NLP//spring99//CA6//Corpora//En2Fa-Translation//dev.en \\
-valid_tgt //content//drive//My\ Drive//Colab\ Notebooks//NLP//spring99//CA6//Corpora//En2Fa-Translation//dev.fa \\
-save_data //content//drive//My\ Drive//Colab\ Notebooks//NLP//spring99//CA6//Corpora//En2Fa-Translation//demo//

以及我想要的代码:

path ='//content//dri`ve//My\ Drive//Colab\ Notebooks//NLP//spring99//CA6//Corpora//En2Fa-Translation//'

!onmt_preprocess \\
-train_src path+'train.en' \\
-train_tgt path+'train.fa' \\
-valid_src path+'dev.en' \\
-valid_tgt path++'dev.fa' \\
-save_data path+'demo//'

或者也许可以将所有路径写入变量并像这样使用它:

path_train ='//content//dri`ve//My\ Drive//Colab\ Notebooks//NLP//spring99//CA6//Corpora//En2Fa-Translation//'

!onmt_preprocess \\
-train_src path_train \\

最佳答案

您可以使用简单的串联:

path='//content//drive//My\ Drive//Colab\ Notebooks//NLP//spring99//CA6//Corpora//En2Fa-Translation//'
!onmt_preprocess \\
-train_src $path'train.en' \\
-train_tgt $path'train.fa' \\
-valid_src $path'dev.en' \\
-valid_tgt $path'dev.fa' \\
-save_data $path'demo//'

注意事项:

  • 变量path 后面必须跟=,而不是空格。 = 两边不能有空格。 path='text'错了,path='text'错了,path='text'也错了。
  • 当你使用一个变量时,在它前面加上$:!echo $path'train.en' 将打印//content//drive//My Drive//Colab Notebooks//NLP//spring99//CA6//Corpora//En2Fa-Translation//train.en
  • 连接意味着不需要使用 +& 等将字符串文字粘合到变量。

关于python - 如何在 opennmt-py 中将字符串转换为路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62103582/

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