【问题标题】:error while naming a text file with a large name用大名称命名文本文件时出错
【发布时间】:2019-08-08 10:29:28
【问题描述】:

我正在尝试使用以下名称重命名文本文件:

MLPClassifier(activation='relu', alpha=0.0001, batch_size='auto', beta_1=0.9,
       beta_2=0.999, early_stopping=True, epsilon=1e-08,
       hidden_layer_sizes=(181, 181, 181), learning_rate='constant',
       learning_rate_init=0.05, max_iter=100, momentum=0.9,
       nesterovs_momentum=True, power_t=0.5, random_state=None,
       shuffle=True, solver='adam', tol=0.0001, validation_fraction=0.1,
       verbose=False, warm_start=False)

当我复制粘贴上面的名称并尝试重命名文件时,我可以重命名它,但使用 Python 程序尝试相同的操作会出现错误

FileNotFoundError: [Errno 2] No such file or directory: "MLPClassifier(activation='relu', alpha=0.0001, batch_size='auto', beta_1=0.9,\n       beta_2=0.999, early_stopping=True, epsilon=1e-08,\n       hidden_layer_sizes=(181, 181, 181), learning_rate='constant',\n       learning_rate_init=0.05, max_iter=100, momentum=0.9,\n       nesterovs_momentum=True, power_t=0.5, random_state=None,\n       shuffle=True, solver='adam', tol=0.0001, validation_fraction=0.1,\n       verbose=False, warm_start=False).txt"

这是我的代码:

modelDetailsAndResults = modelName+'.txt'
output_file = open(modelDetailsAndResults,"w", encoding="utf8")
output_file.write("model details:")
output_file.write(modelName)
output_file.close()

【问题讨论】:

  • 您确定要使用换行符和一堆特殊字符来命名您的文件吗?
  • 没有特殊字符或者换行就可以了
  • @AnthonySottile 如果我消除特殊字符和换行符,请问我该怎么做?
  • 可能可以做类似re.sub('[^a-zA-Z0-9_.,=]', '', filename) 的操作来消除任何不在该字符类中的字符
  • @AnthonySottile 实际上不是因为特殊字符,而是因为长度。我在下面放了一个随机字符串。如果您尝试在其中添加更多字符,则会在重新命名时出错

标签: python-3.x string file text


【解决方案1】:

这是因为您无法重命名某些字符以上的文件。我猜大概是251左右,但不确定。您使用的字符数很多

【讨论】:

    猜你喜欢
    • 2019-01-04
    • 1970-01-01
    • 1970-01-01
    • 2021-03-31
    • 2016-04-30
    • 2018-10-16
    • 2017-07-16
    • 2014-06-01
    • 2018-03-10
    相关资源
    最近更新 更多