python文件编码

1.python 读取文本里有多种编码

要写入的数据本身就是byte串(u'中文'是中文字符串,'中文'是byte串),用二进制方式打开就可以写了。

#coding:utf-8

f = open('file.txt', 'wb') #以二进制方式打开文件

f.write('写入中文') #

f.close()

如果数据是unicode,先编码再写入:

#coding:utf-8

f = open('file.txt', 'wb')

f.write(u'写入中文'.encode('utf-8') # 编码为byte string

f.close()

用codecs模块的话,通常的情况是你要写入的数据就是unicode string,不需要再decode了。

#coding:utf-8

import os

import sys

import codecs #这个模块可以实现。

s = u'中文;113456789876543234567' # s是unicode string

f = codecs.open('ufile.log', 'w', 'utf-8')

f.write(s) #直接写入,codecs负责编码

f.close()

2.python导入py文件报错怎么办

其实这两个错误的原因归根结底是一样的:在涉及到相对导入时,package所对应的文件夹必须正确的被python解释器视作package,而不是普通文件夹。否则由于不被视作package,无法利用package之间的嵌套关系实现python中包的相对导入。

文件夹被python解释器视作package需要满足两个条件:

1、文件夹中必须有__init__.py文件,该文件可以为空,但必须存在该文件。

2、不能作为顶层模块来执行该文件夹中的py文件(即不能作为主函数的入口)。

补充:在"from YY import XX"这样的代码中,无论是XX还是YY,只要被python解释器视作package,就会首先调用该package的__init__.py文件。如果都是package,则调用顺序是YY,XX。

另外,练习中“from . import XXX”和“from .. import XXX”中的'.'和'..',可以等同于linux里的shell中'.'和'..'的作用,表示当前工作目录的package和上一级的package。

3.python 使用logging,生成的log文件是什么编码格式

log的文件当然是byte格式。

或者是无格式的。汉字编码取决于你自己设定的类型。

#coding:utf-8这个东西,只在python2下有效果。还需要编程器配合。

你使用python自带的idle当然是没有问题的。 log中的汉字是一定要编码的。

不编码你存贮不了。 编辑器本身的缺省编码格式要与你的源代码编码一致,不然看到的就是乱码。

如果是idle,它会根据python脚本自动识别。不过有些编辑器是有些不智能的。

它不能理解python脚本第一行的提示。所以有时候,觉着很别扭自己要手工保持编辑器的编码与源码一致。

还需要维护那个coding:utf-8不过python3已将这一句去掉了。源代码全部要求使用utf-8编码(也许是utf-16),我很少用python3。

python文件编码

转载请注明出处编程代码网 » python文件编码

资讯

python字符串的替换字符串

阅读(0)

本文主要为您介绍python字符串的替换字符串,内容包括python怎么替换文件中字符串中的字符,python字符串格式化什么意思,Python怎样用变量替换字符串。在python中也有类似于c中的printf()的格式输出标记。在python中格式化输出字符串使用的是

资讯

逻辑与Python

阅读(51)

本文主要为您介绍逻辑与Python,内容包括我想问下python中逻辑与:“&”和“and”的区别,五年级如何学好Python,学习python需要什么必备的基础呢。“&”和“and”有本质区别,属于不同类型的运行符号。& 是位运算;and 是逻辑运算。 2、首先是&:该

资讯

python字符串的替换字符

阅读(56)

本文主要为您介绍python字符串的替换字符,内容包括python怎么替换文件中字符串中的字符,python中文字符串替换字符?,Python中提到字符串是不可变的,但是字符串方法不就改变了字符串。在python中将列表转换为字符串的方法如下: 通过桌面快捷

资讯

idlepython

阅读(34)

本文主要为您介绍idlepython,内容包括python中的idle是如何运行的,python的IDLE是什么意思?,python编译环境IDLE的端口绑定错误当我打开Python的。使用ide集成开发环境会使开发效率大幅度提升。python中的ide有很多,vim,sublimetext,vscode

资讯

linux安装python

阅读(39)

本文主要为您介绍linux安装python,内容包括如何在linux系统中安装python?,Python在linux下运行的一个问题在windows下可以正,零基础学习python需要直接使用linux吗。1.下载源代码 http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tar

资讯

pythonlinux安装

阅读(27)

本文主要为您介绍pythonlinux安装,内容包括python在linux系统怎么安装,Python在linux下运行的一个问题在windows下可以正,Linux问题1.请问我装了一个CentOS系统后,发现还有些组。linux下安装python3a、 准备编译环境(环境如果不对的话,可能遇

资讯

pythonif退出

阅读(33)

本文主要为您介绍pythonif退出,内容包括如何控制python多线程的退出,Python中怎么在程序中设置用ESC键退出一个死循环,pythonifnotlines.find(keyword)==1:n=n+1执行一次就退出了,文本。相信用C/C++写过服务的同学对通过响应Ctrl-C(信号量SI

资讯

python文件py

阅读(65)

本文主要为您介绍python文件py,内容包括python怎么打开py文件,python程序怎么用py2exe打包(其他软件也可以)pyth,Python常见文件如何操作?。首先在资源管理器里复制一下py文件存放的路径,按下windows键+r,在运行里输入cmd,回车打开命令行:2、在

资讯

python的encode

阅读(39)

本文主要为您介绍python的encode,内容包括python中decode和encode的区别,在用python编写网页爬虫脚本时出现UnicodeEncode?,python网络爬虫正则表达式603066,732066,音飞储。123456789101112//还有这等事.哈哈import re file = open(xx.htm

资讯

python从字符串

阅读(48)

本文主要为您介绍python从字符串,内容包括Python中如何定义字符串,python字符串格式化什么意思,python如何使用字符串,格式化字符将下面六条程序编写成一条t?爱。在Python中字符串是不可改变的对象(immutable),因此无法直接修改字符串的某一位

资讯

python3书

阅读(65)

本文主要为您介绍python3书,内容包括python三本经典书籍都是什么?,初学者学Python3有什么推荐的书吗,给推荐一本python(3.3)的教。python三本经典书籍有:《深度学习入门:基于Python的理论与实现》,《Python高性能(第2版)》,《Python科学计算最佳

资讯

获取python路径

阅读(54)

本文主要为您介绍获取python路径,内容包括如何获取Python模块的路径,Python常见文件如何操作?,如何找一个初级Python开发工作?。# -*-coding:utf8 -*- Python常见文件操作示例 os。path 模块中的路径名访问函数分隔basename()

资讯

python模块

阅读(49)

本文主要为您介绍python模块,内容包括如何使用和制作Python安装模块,Windows系统中如何安装Python扩展模块,python全模块问题,懂得进!手机安装,1165KB,1.45。方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib二、方法2: 多文件模块,带setup

资讯

urllib2python

阅读(44)

本文主要为您介绍urllib2python,内容包括如何在Python中使用urllib2,12怎么装urllib2?python2.7.12怎么装urll,python为什么叫爬虫?。urllib和urllib2urllib和urllib2都是接受URL请求的相关模块,但是urllib2可以接受一个Request类的实

资讯

python字符串的替换字符串

阅读(0)

本文主要为您介绍python字符串的替换字符串,内容包括python怎么替换文件中字符串中的字符,python字符串格式化什么意思,Python怎样用变量替换字符串。在python中也有类似于c中的printf()的格式输出标记。在python中格式化输出字符串使用的是

资讯

逻辑与Python

阅读(51)

本文主要为您介绍逻辑与Python,内容包括我想问下python中逻辑与:“&”和“and”的区别,五年级如何学好Python,学习python需要什么必备的基础呢。“&”和“and”有本质区别,属于不同类型的运行符号。& 是位运算;and 是逻辑运算。 2、首先是&:该

资讯

python字符串的替换字符

阅读(56)

本文主要为您介绍python字符串的替换字符,内容包括python怎么替换文件中字符串中的字符,python中文字符串替换字符?,Python中提到字符串是不可变的,但是字符串方法不就改变了字符串。在python中将列表转换为字符串的方法如下: 通过桌面快捷

资讯

idlepython

阅读(34)

本文主要为您介绍idlepython,内容包括python中的idle是如何运行的,python的IDLE是什么意思?,python编译环境IDLE的端口绑定错误当我打开Python的。使用ide集成开发环境会使开发效率大幅度提升。python中的ide有很多,vim,sublimetext,vscode

资讯

linux安装python

阅读(39)

本文主要为您介绍linux安装python,内容包括如何在linux系统中安装python?,Python在linux下运行的一个问题在windows下可以正,零基础学习python需要直接使用linux吗。1.下载源代码 http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tar

资讯

pythonlinux安装

阅读(27)

本文主要为您介绍pythonlinux安装,内容包括python在linux系统怎么安装,Python在linux下运行的一个问题在windows下可以正,Linux问题1.请问我装了一个CentOS系统后,发现还有些组。linux下安装python3a、 准备编译环境(环境如果不对的话,可能遇

资讯

pythonif退出

阅读(33)

本文主要为您介绍pythonif退出,内容包括如何控制python多线程的退出,Python中怎么在程序中设置用ESC键退出一个死循环,pythonifnotlines.find(keyword)==1:n=n+1执行一次就退出了,文本。相信用C/C++写过服务的同学对通过响应Ctrl-C(信号量SI

资讯

python退出python

阅读(32)

本文主要为您介绍python退出python,内容包括如何优雅地退出python程序,python为什么叫爬虫?,如何结束python程序。爬虫通常指的是网络爬虫,就是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。因为python的脚本特性,python易于配置,