广告
返回顶部
首页 > 资讯 > 操作系统 >linux之系统编码,python编码,
  • 137
分享到

linux之系统编码,python编码,

系统linuxpython 2023-01-31 06:01:38 137人浏览 独家记忆
摘要

如果你对python2和python3的中编解码很清楚,这里我认为你很清楚。具体参考文档:“Python2 encode和decode函数说明.docx”“字符编码——从ASCII开始.docx”以上所有文档均为本地文档。sys.getde

如果你对python2和python3的中编解码很清楚,这里我认为你很清楚。

具体参考文档:

Python2 encode和decode函数说明.docx”

“字符编码——从ASCII开始.docx”

以上所有文档均为本地文档。

sys.getdefaultencoding(): 获取系统当前编码,这里的系统指的是python自己的内置系统,并非操作系统,即3中的python编码。

sys.setdefaultencoding(): 设置系统默认编码,执行dir(sys)时不会看到这个方法,在解释器中执行不通过,可以先执行reload(sys),在执行 setdefaultencoding(‘utf8’),此时将系统默认编码设置为utf8。

sys.getfilesystemencoding(): 获取文件系统使用编码方式,windows下返回’mbcs’,Mac下返回’utf-8’.

这部分内容可参见“Python判断当前操作系统类型以及os, sys, platfORM模块简介”

其实我认为这部分对后面的故障定位没作用。

3.1   系统编码

默认写源码的编辑器的编码方式。它代表源码文件内的所有内容都是根据此方式编码成二进制码流。存入到磁盘中的。linux下通过locale命令查看。

这部分编码就是所谓的编辑器的编码,例如vi命令。

补充:如你在linux终端,直接从其他地方将文本拷贝如linux中,此时将采用系统编码进行编码,通过locale命令查看:

[Asion@mobile220~]$ locale

LANG=GBK

LC_CTYPE="C"

LC_NUMERIC="C"

LC_TIME="C"

LC_COLLATE="C"

LC_MONETARY="C"

LC_MESSAGES="C"

LC_PAPER="C"

LC_NAME="C"

LC_ADDRESS="C"

LC_TELEPHONE="C"

LC_MEASUREMENT="C"

LC_IDENTIFICATION="C"

LC_ALL=C

[Asion@mobile220Python3]$ more ENV.sh

#!/bin/bash

export LC_ALL="en_US.UTF-8"

export LANG="en_US.UTF-8"

[Asion@mobile220Python3]$ source ENV.sh

[Asion@mobile220Python3]$ locale

LANG=en_US.UTF-8

LC_CTYPE="en_US.UTF-8"

LC_NUMERIC="en_US.UTF-8"

LC_TIME="en_US.UTF-8"

LC_COLLATE="en_US.UTF-8"

LC_MONETARY="en_US.UTF-8"

LC_MESSAGES="en_US.UTF-8"

LC_PAPER="en_US.UTF-8"

LC_NAME="en_US.UTF-8"

LC_ADDRESS="en_US.UTF-8"

LC_TELEPHONE="en_US.UTF-8"

LC_MEASUREMENT="en_US.UTF-8"

LC_IDENTIFICATION="en_US.UTF-8"

LC_ALL=en_US.UTF-8

3.2   python编码

指python内设置的解码方式。如果不设定的话,python默认的是ascii解码方式。如果python源代码文件中不出现中文的话,这个地方怎么设定应该不会问题。设定方法:在源码文件开头(一定是第一行):#-*-coding:UTF-8-*-,源码文件的设置解码方式是UTF-8

3.3   文件编码

文本的编码方式,linux下vim利用set fileencoding查看。

注意使用这个命令查看编码时,需保证locale下的

LC_ALL="en_US.UTF-8"

LANG="en_US.UTF-8"

与你当时编码这个文件时一致,否则显示不出来。

PS:当时我vi sendmail.py的文件编码是utf-8,即locale下显示是en_US.UTF-8;

[Asion@mobile220 Python3]$ ls

ENV.sh sendmail.py

[Asion@mobile220Python3]$ locale

LANG=GBK

….

LC_ALL=C

这样的环境下去查看文件编码:

wKioL1kYVbiTKgKZAAB1PfiJUvg804.png-wh_50


中文显示直接乱码了,使用setfileencoding查看压根没有输出:

wKiom1kYVbjA3fupAACAl5VVuVg864.png-wh_50

环境初试回去后查看

[Asion@mobile220Python3]$ source ENV.sh

[Asion@mobile220Python3]$ locale

LANG=en_US.UTF-8

LC_ALL=en_US.UTF-8

wKioL1kYVbnxeKpKAACFKDKAlaI397.png-wh_50

就是你再牛逼的程序员,不推荐去动服务器的编码,除非服务器就只跑你自己的程序。


--结束END--

本文标题: linux之系统编码,python编码,

本文链接: https://www.lsjlt.com/news/189710.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • linux之系统编码,python编码,
    如果你对python2和python3的中编解码很清楚,这里我认为你很清楚。具体参考文档:“python2 encode和decode函数说明.docx”“字符编码——从ASCII开始.docx”以上所有文档均为本地文档。sys.getde...
    99+
    2023-01-31
    系统 linux python
  • linux如何查看系统编码和修改系统编码
    这篇文章主要介绍了linux如何查看系统编码和修改系统编码的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇linux如何查看系统编码和修改系统编码文章都会有所收获,下面我们一起来...
    99+
    2022-10-19
  • Linux系统怎么修改系统编码
    这篇文章主要介绍了Linux系统怎么修改系统编码,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Windows的默认编码为GBK,Linux的默认编码为UTF-8,在Windo...
    99+
    2023-06-28
  • linux怎么查看系统编码
    linux中查看系统编码的方法:1、打开终端;2、输入“locale”命令查看当前系统的编码即可。具体操作步骤:在linux系统桌面下使用快捷键【Ctrl+Alt+T】打开终端命令行模式。在linux终端命令行模式中输入以下命令查看当前系统...
    99+
    2022-10-09
  • Python之再说编码
    ''' 编码回顾 :     ASCII : 一个字节,包括数字,字母,特殊字符;     GBK : 国标码,占用两个字节,包括中文,部分日文,韩文等;     UNICODE : 万国码, 四个字节,包含世界上所有国家的字符;     ...
    99+
    2023-01-31
    Python
  • python系统编码-稍后更新
    安装IDLE (Python GUI)时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错UnicodeDecodeError: 'ascii' codec can't decode byte ...
    99+
    2023-01-31
    稍后 系统 python
  • Python之string编码问题
    目录一、前言什么是编码?什么是字符集二、影响Python执行的编码方案1.Python解释器的默认编码2.Python源文件文件编码3.操作系统的语言设置4.Terminal使用的编...
    99+
    2023-02-28
    Python string编码 string编码 Python编码
  • Linux系统如何查看文件编码
    这篇“Linux系统如何查看文件编码”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“Linux系统如何查看文件编码”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解,接下来就让我们...
    99+
    2023-06-28
  • Linux系统怎么修改默认编码
    Linux系统怎么修改默认编码,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、Linux系统的默认编码设置。/etc/sysconfig/i18nContro...
    99+
    2023-06-28
  • python基础之字符编码
    一 计算机基础知识   二 文本编辑器存取文件的原理(nodepad++,pycharm,word) #1、打开编辑器就打开了启动了一个进程,是在内存中的,所以,用编辑器编写的内容也都是存放与内存中的,断电后数据丢失 #2、要想永久...
    99+
    2023-01-30
    字符 基础 python
  • Python反编译之字节码
    如果你曾经写过或者用过 Python,你可能已经习惯了看到 Python 源代码文件;它们的名称以.Py 结尾。你可能还见过另一种类型的文件是 .pyc 结尾的,它们就是 Python “字节码”文件。(在 Python3 的时候这个 .p...
    99+
    2023-01-31
    字节 反编译 Python
  • Android 系统源码编译
    文章目录 一、环境准备二、下载Android源码(1) 安装python(2)安装Git & 配置Git信息(3)安装curl(4) 下载repo(5)创建源码存放目录(6)初始化仓库(7) ...
    99+
    2023-09-14
    移动安全 工具 技术
  • python黑魔法之编码转换
    我们在使用其他语言的库做编码转换时,对于无法理解的字符,通常的处理也只有两种(或三种): 抛异常 替换成替代字符 跳过 但是在复杂的现实世界中,由于各种不靠谱,我们处理的文本总会出现那...
    99+
    2022-06-04
    黑魔法 python
  • Windows和Linux系统下mysql编码设置方法
    本篇内容介绍了“Windows和Linux系统下mysql编码设置方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够...
    99+
    2022-10-18
  • Linux系统下使用命令行进行Base64编码和解码
    大家知道,编码是将数据转换为有效传输或存储所需格式的过程。相反,解码是将编码数据转换回其原始格式的过程。今天在这里向大家介绍一下 Base64 编码和解码,以便大家理解与学习。 Base64 是将二进制数据转换为 ASCII 的编码方式之一...
    99+
    2023-09-07
    linux 运维 服务器
  • Linux系统编程之进程介绍
    我们平时写的 C 语言代码,通过编译器编译,最终它会成为一个可执行程序,当这个可执行程序运行起来后(没有结束之前),它就成为了一个进程。一、进程概述...
    99+
    2023-06-05
  • Python HTML编码解码
    >>> import HTMLParser >>> h = HTMLParser.HTMLParser() &g...
    99+
    2023-01-31
    Python HTML
  • Python编码规范摆脱Python编码噩梦
    目录1. Python 3 中 str 与 bytes2. Python 2 中 str 与 unicode3. 如何检测对象的编码4. 编码与解码的区别5. 如何设置文件编码博客原...
    99+
    2022-11-12
  • Linux系统中如何编码设置显示中文
    本篇内容介绍了“Linux系统中如何编码设置显示中文”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一,相关变量介绍 我们知道大部分Linux...
    99+
    2023-06-12
  • Linux系统下怎么转换文件编码格式
    本篇内容介绍了“Linux系统下怎么转换文件编码格式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、利用iconv命令进行文件内容编码转换...
    99+
    2023-06-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作