【发布时间】: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