python2.7更改编码类型、根据系统替换分隔符
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
·
解决问题:
1、在系统默认编码为ASCII的系统中,保存中文到文件是乱码:“UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe7 in position 7: ordinal not in range(128)"
2、在window和linux文件路径分隔符不相同,同一个脚本在不同系统找不到对应路径/文件
编码格式问题处理:
import sys
# 如果系统默认编码为ascii,则设置编码格式为utf8
if sys.getdefaultencoding() == 'ascii':
reload(sys)
# 因为解释器启动时默认编码为ascii,只有重新加载sys后,再设置编码格式才会生效
sys.setdefaultencoding('utf8')
系统路径分隔符
import re
import os
def SepChange(Path):
'''
路径分隔符替换
:param Path: 路径
:return: 替换过系统分隔符的路径
'''
if re.search('/',path):
path = Path.replace('/',os.sep)
elif re.search(r'\\',path):
path = Path.replace(r'\\',os.sep)
else:
pass
return path
完整的SysEncoding.py文件内容:
# coding:utf-8
'''
Note:
更换路径间隔符
更换编码格式为'utf-8'
Author:Qred
Date:2019/8/20
'''
import re
import os
import sys
if sys.getdefaultencoding() == 'ascii':
reload(sys)
sys.setdefaultencoding('utf8')
def SepChange(Path):
'''
路径分隔符替换
:param Path: 路径
:return: 替换过系统分隔符的路径
'''
if re.search('/',path):
path = Path.replace('/',os.sep)
elif re.search('\\',path):
path = Path.replace('\\',os.sep)
else:
pass
return path
在需要进行编码格式的脚本头部引入该文件,即可实现ascii转utf8的变换。
如果脚本中涉及不通操作系统的文件路径转换,可以调用SepChange实现文件路径的快速转换。
A beautiful web dashboard for Linux
最近提交(Master分支:4 个月前 )
186a802e
added ecosystem file for PM2 5 年前
5def40a3
Add host customization support for the NodeJS version 5 年前
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)