让代码在加载时更改终端设置
Have Code Change Terminal Settings Upon Load
我有一个程序要求我在 运行 代码之前输入 chcp 65001
和 set PYTHONIOENCODING=utf-8
,否则它无法正确处理字符。有没有办法让代码在打开时自动执行此操作?每次都这样做很痛苦,也很容易忘记。
其实你应该可以在Python内完成,但是假设它的运行时间有这个要求,你可以在调用[=31=之前在批处理文件中进行这些设置] 用你的脚本。例如,假设此脚本名为 pyutf8.bat
:
@echo off
setlocal
chcp 65001
set PYTHONIOENCODING=utf-8
python %1 %2 %3 %4 %5 %6 %7 %8 %9
然后你可以运行你的脚本使用这个:
pyutf8 myscript.py
、%1
等,是脚本的位置参数。您可以检查是否没有给出任何参数,使用它来提供默认参数。像这样:
@echo off
setlocal
chcp 65001
set PYTHONIOENCODING=utf-8
if "%1"=="" goto default
python %1 %2 %3 %4 %5 %6 %7 %8 %9
goto :eof
:default
python myscript.py
进一步阅读:
我有一个程序要求我在 运行 代码之前输入 chcp 65001
和 set PYTHONIOENCODING=utf-8
,否则它无法正确处理字符。有没有办法让代码在打开时自动执行此操作?每次都这样做很痛苦,也很容易忘记。
其实你应该可以在Python内完成,但是假设它的运行时间有这个要求,你可以在调用[=31=之前在批处理文件中进行这些设置] 用你的脚本。例如,假设此脚本名为 pyutf8.bat
:
@echo off
setlocal
chcp 65001
set PYTHONIOENCODING=utf-8
python %1 %2 %3 %4 %5 %6 %7 %8 %9
然后你可以运行你的脚本使用这个:
pyutf8 myscript.py
、%1
等,是脚本的位置参数。您可以检查是否没有给出任何参数,使用它来提供默认参数。像这样:
@echo off
setlocal
chcp 65001
set PYTHONIOENCODING=utf-8
if "%1"=="" goto default
python %1 %2 %3 %4 %5 %6 %7 %8 %9
goto :eof
:default
python myscript.py
进一步阅读: