草庐IT

utf8Bytes

全部标签

python - 使用pyinstaller生成exe文件报错-typeerror : expected str, bytes or os.PathLike object, not NoneType

我正在尝试使用pysinstaller和Python3.7.2从.py文件构建一个.exe文件。它适用于Python3.6;然后我重新安装了最新版本的Python(3.7.2)并尝试生成一个exe文件,但是pyinstallerbarfs。下面是我得到的错误报告。(venv)C:\Users\user\Desktop\untitled1>pyinstallertest.py53INFO:PyInstaller:3.453INFO:Python:3.7.254INFO:Platform:Windows-10-10.0.17134-SP058INFO:wroteC:\Users\user\

python - 使用控制台让 python 在 Windows XP 上以 UTF8 打印

我想在WindowsXP上配置我的控制台以支持UTF8并让python检测并使用它。到目前为止,我的尝试:C:\DocumentsandSettings\Philippe>C:\Python25\python.exePython2.5.2(r252:60911,Feb212008,13:11:45)[MSCv.131032bit(Intel)]onwin32Type"help","copyright","credits"or"license"formoreinformation.>>>printu'é'é>>>importsys>>>sys.stdout.encoding'cp437'

Python 将 latin1 转换为 UTF8

这个问题在这里已经有了答案:Python:ConvertingfromISO-8859-1/latin1toUTF-8(5个答案)关闭去年。在Python2.7中,如何将latin1字符串转换为UTF-8。例如,我正在尝试将é转换为utf-8。>>>"é"'\xe9'>>>u"é"u'\xe9'>>>u"é".encode('utf-8')'\xc3\xa9'>>>printu"é".encode('utf-8')é字母是é,它是带尖音符号的拉丁文小写字母E(U+00E9)UTF-8字节编码为:c3a9拉丁字节编码为:e9如何获取拉丁字符串的UTF-8编码版本?有人可以举例说明如何转

python - json.dump - UnicodeDecodeError : 'utf8' codec can't decode byte 0xbf in position 0: invalid start byte

我有一个字典data我存储了:key-事件IDvalue-此事件的名称,其中value是UTF-8字符串现在,我想把这张map写到一个json文件中。我试过这个:withopen('events_map.json','w')asout_file:json.dump(data,out_file,indent=4)但这给了我错误:UnicodeDecodeError:'utf8'codeccan'tdecodebyte0xbfinposition0:invalidstartbyte现在,我也试过:withio.open('events_map.json','w',encoding='utf

python - 将 Python 3 Unicode 字节字符串 - `str(utf8_encoded_str)` 转换回 unicode

那我先介绍一下问题我通过POST/GET请求获得了一些数据。数据是UTF-8编码的字符串。我不知道,只是通过str()方法将其转换。现在我拥有完整的“废话数据”数据库,找不到返回的方法。示例代码:unicode_str-这是我应该获取的字符串encoded_str-这是我通过POST/GET请求获得的字符串-初始数据bad_str-我目前在数据库中的数据,我需要从中获取unicode。显然我知道如何转换:unicode_str=(encode)=>encoded_str=(str)=>bad_str但我无法想出解决方案:bad_str=(???)=>encoded_str=(decod

python 2.7 等效于内置方法 int.from_bytes

我正在尝试使我的项目与python2.7和3兼容,而python3具有内置方法int.from_bytes。python2.7中是否存在等效项,或者更确切地说,使此代码与2.7和3兼容的最佳方法是什么?>>>int.from_bytes(b"f483",byteorder="big")1714698291 最佳答案 您可以将其视为一种编码(特定于Python2):>>>int('f483'.encode('hex'),16)1714698291或者在Python2和Python3中:>>>int(codecs.encode(b'f4

python - 'bytes' 对象没有属性 'encode'

在将每个文档插入集合之前,我试图存储盐和散列密码。但是在对盐和密码进行编码时,它显示以下错误:line26,inbefore_insertdocument['salt']=bcrypt.gensalt().encode('utf-8')AttributeError:'bytes'objecthasnoattribute'encode'这是我的代码:defbefore_insert(documents):fordocumentindocuments:document['salt']=bcrypt.gensalt().encode('utf-8')password=document['pa

python - Python如何将bytes转为float?

我有以下代码片段:#!/usr/bin/envpython3print(float(b'5'))它打印5.0没有错误(在使用utf-8编码的Linux上)。我很惊讶它没有给出错误,因为Python不应该知道字节对象使用什么编码。有什么见解吗? 最佳答案 当传递一个bytes对象时,float()将对象的内容视为ASCII字节。这在这里就足够了,因为从字符串到float的转换只接受ASCII数字和字母,加上.和_无论如何(唯一允许的非ASCII代码点是空格代码点),这类似于int()处理bytes输入的方式。在幕后,实现是这样做的:因

java - Java String.getBytes() 和 Python string -> bytes 之间的行为完全相同吗?

在我的Java代码中有以下片段:Stringsecret="secret";byte[]thebytes=secret.getBytes();我想在python中得到完全相同的结果。我该怎么做?secret='secret'thebytes=?????????谢谢。编辑:此外,如果有Python2.x和3.x的解决方案会很有趣 最佳答案 这并不像乍看起来那么简单,因为Python历来将字节数组和字符串混为一谈。在Python3中,简短的回答是secret="secret"secret.encode()但是您应该阅读Python如何处

python - 子进程 "TypeError: a bytes-like object is required, not ' str'"

我正在使用来自apreviouslyaskedquestionafewyearsago的代码但是,我认为这已经过时了。尝试运行代码时,我收到了上面的错误。我仍然是Python的新手,所以我无法从类似的问题中得到太多的澄清。有谁知道为什么会这样?importsubprocessdefgetLength(filename):result=subprocess.Popen(["ffprobe",filename],stdout=subprocess.PIPE,stderr=subprocess.STDOUT)return[xforxinresult.stdout.readlines()if"