目录
获取和编辑windows系统环境变量
1.新增的系统变量使用下面的方法获取不到,关机重启即可
2.修改的环境变量是临时改变的,当程序停止时修改的环境变量失效(系统变量不会改变)
# 获取 系统环境 PATH 的变量
# env = os.environ.get("PATH")
print os.environ["PATH"]
# 定义环境变量
mydir = "c:\\mydir"
# 给 MYDIR赋值(临时创建的环境变量)
os.environ["TERM"] = mydir+";" + os.environ["TERM"]
print os.environ["TERM"]
可以修改path路径的显示方式,便于查看
In [6]: print('\n'.join(os.environ["path"].split(';')))
C:\Program Files (x86)\Common Files\Oracle\Java\javapath
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common
C:\windows\system32
C:\windows
C:\windows\System32\Wbem
C:\windows\System32\WindowsPowerShell\v1.0\
D:\Program Files\Java\jdk1.8.0_181\bin
D:\Program Files\MySQL\MySQL Server 5.5\bin
D:\Program Files\apache-ant-1.9.3/bin
C:\Program Files (x86)\Google\Chrome\Application
D:\Programs\TortoiseSVN\bin
D:\Programs\Python\Python 3.7.2\Scripts\
D:\Programs\Python\Python 3.7.2\
D:\Programs\JetBrains\PyCharm 2018.3.5\bin
修改标准输出编码
方法一
import io
import sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')
此语句重复执行两次之后,执行输入输出操作会报错
ValueError: I/O operation on closed file.
方法二
import sys
import io
def setup_io():
#sys.stdout 是个 io.TextIOWrapper,有个 buffer 属性,里边是个 io.BufferedWriter。
sys.stdout = sys.__stdout__ = io.TextIOWrapper(sys.stdout.detach(), encoding='utf-8', line_buffering=True)
sys.stderr = sys.__stderr__ = io.TextIOWrapper(sys.stderr.detach(), encoding='utf-8', line_buffering=True)
setup_io()
经验证执行多次,仍可正常输出
----------
转自:python3 Xcode环境 中文输出问题临时解决
作者:yuanzhiying
出处:简书
调试字符串编码
1. 保证控制台编码和基本输出编码sys.stdout.encoding一致
当需要查看某个字符在经过某种编码之后的显示结果时,需要保证控制台编码和基本输出编码sys.stdout.encoding一