sys.stdout仅创建一个空文件

问题描述

我有一些代码报告了CV和超参数优化的结果。我正在尝试将结果打印到文件中。文件被创建,但是不在那里打印结果。它还不会将它们打印到终端。怎么了?

    def report(results,n_top=3):
        original_stdout = sys.stdout
        with open('filename.txt','w') as f:
            sys.stdout = f
            for i in range(1,n_top + 1):
                candidates = np.flatnonzero(results['rank_test_score'] == i)
            for candidate in candidates:
                print("Model with rank: {0}".format(i))
                print("Mean validation score: {0:.3f} (std: {1:.3f})".format(
                        results['mean_test_score'][candidate],results['std_test_score'][candidate]))
                print("Parameters: {0}".format(results['params'][candidate]))
                print("")
        sys.stdout = original_stdout
    report(gs.cv_results_,10)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)