Mac python 往文件输入内容是 报内容不是字符串
os.write(fd,"奥特曼爱打小怪兽")Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
os.write(fd,"奥特曼爱打小怪兽")
TypeError: a bytes-like object is required, not 'str' 发完整代码 os.write(str(fd) + "奥特曼爱打小怪兽")
看看行不行吧 本帖最后由 sunrise085 于 2020-8-27 09:18 编辑
英文理解错了。报错是说:类型错误,需要类似字节类型对象,而不是字符串类型对象
也就是说这里的参数不能是字符串,应该字节流
解决方法,对字符串进行编码
给你提供一种方法,你也可以自己再查查,将字符串编码的方式方法
os.write(fd,"奥特曼爱打小怪兽".encode())
看看这个是不是你遇到的问题:https://www.fujieace.com/python/str-bytes.html
sunrise085 发表于 2020-8-27 09:17
英文理解错了。报错是说:类型错误,需要类似字节类型对象,而不是字符串类型对象
也就是说这里的参数不能 ...
>>> os.write(fd,"奥特曼爱打小怪兽".encode())
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
os.write(fd,"奥特曼爱打小怪兽".encode())
TypeError: an integer is required (got type tuple)
报错 Twilight6 发表于 2020-8-27 09:39
看看这个是不是你遇到的问题:https://www.fujieace.com/python/str-bytes.html
str="奥特曼爱打小怪兽"
>>> str=str.encode()
>>> os.write(fd,str)
Traceback (most recent call last):
File "<pyshell#14>", line 1, in <module>
os.write(fd,str)
TypeError: an integer is required (got type tuple)
报错 xiaoshengemu 发表于 2020-8-27 21:46
>>> os.write(fd,"奥特曼爱打小怪兽".encode())
Traceback (most recent call last):
File "", line...
你的前后代码呢?问题应该不在这一行
下面这个是可以运行的
import os,sys
fd = os.open( "haha", os.O_CREAT|os.O_WRONLY)
os.write(fd,"奥特曼爱打小怪兽".encode(encoding='GBK'))#GBK方式编码
#os.write(fd,"奥特曼爱打小怪兽".encode())#utf-8编码
os.close(fd) sunrise085 发表于 2020-8-27 22:05
你的前后代码呢?问题应该不在这一行
下面这个是可以运行的
执行完上面的代码后
os.write(fd,"奥特曼爱打小怪兽".encode(encoding='GBK'))#GBK方式编码
16
os.close(fd)
然后文件就打不开了
用python来读取
fd = os.open( "/Users/xiaoshengemu/Desktop/haha.rtf", os.O_RDONLY)
red = os.read(fd,2314)
print (red)
b'\xb0\xc2\xcc\xd8\xc2\xfc\xb0\xae\xb4\xf2\xd0\xa1\xb9\xd6\xca\xde'
读是读出来了。但是返回了乱吗
之后有用终端读取 结果返回
??????????С????%
本帖最后由 xiaoshengemu 于 2020-9-7 21:18 编辑
xiaoshengemu 发表于 2020-9-4 19:32
执行完上面的代码后
os.write(fd,"奥特曼爱打小怪兽".encode(encoding='GBK'))#GBK方式编码
页:
[1]