python 编码问题 UnicodeDecodeError: ‘utf8’ codec can’t decode byte 0xb4 in position 0: invalid start byt

时间:2021-08-15 20:52:51

心好累呀,作为一个菜鸟,进了银行实习,银行还没有网络,不能查询,只能靠自己的流量;而且银行也不能将文件输入输出,造成了我更加懵逼的状态。脚还扭伤了,两周没有去,进度更不上。

windows配spark的环境老不行,问题也不能解决。等会把问题抄一下吧

先把编码的问题写上来

今天学习DataFrame的时候,


from pyspark.sql import SparkSession

spark = SparkSession \
.builder \
.appName("Python Spark SQL basic example") \
.config("spark.some.config.option", "some-value") \
.getOrCreate()

df = spark.read.json("examples/src/main/resources/people.json")
# Displays the content of the DataFrame to stdout
df.show()
出现了错误:(怎么办 我发不了错误的信息,就写最后两个吧)

fie "C:\python27\lib\subprocess.py",line 290, in list2cmdline

return "".join(result)

UnicodeDecodeError: ‘utf8’ codec can’t decode byte 0xb4 in position 0: invalid start byte



解决:

import sys  
reload(sys)
sys.setdefaultencoding('ISO-8859-1')

之前用了gbk和utf-8都不行,只有iso这个可以,

ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致,0x80-0x9F之间是控制字符,0xA0-0xFF之间是文字符号。