python - 为什么脚本无法为 avro 文件生成架构
问题描述
我通过运行“pip install avro”在 python 中安装了 avro 模块,但看起来该模块没有被识别。我运行了以下代码:
import avro.schema
from avro.datafile import DataFileReader, DataFileWriter
from avro.io import DatumReader, DatumWriter
reader = avro.datafile.DataFileReader(open('C:\\Users\\rgopi\\Downloads\\userdata1.avro.avro',"rb"),avro.io.DatumReader())
schema = reader.meta
print(schema)
它说“avro”:Visual Studio Code 中的未知单词。尽管如此,我还是运行了代码,它给出了以下错误:
*> 文件“d:/Junk/test.py”,第 1 行,在
import avro.schema File "C:\Python37\lib\site-packages\avro\schema.py", line 383 except Exception, e: ^ SyntaxError: invalid syntax*
我究竟做错了什么?
解决方案
我已经安装了Python 2版本的 avro 模块。我卸载并安装了Python 3版本,必须重新启动几次才能生效。
从 avro.datafile 导入 avro 从 avro.io 导入 DataFileReader、DataFileWriter 导入 DatumReader、DatumWriter
reader = avro.datafile.DataFileReader(open('C:\DataEngineering\Python\Scripts\twitter.avro',"rb"),avro.io.DatumReader()) schema = reader.meta print(schema)
推荐阅读
- python - 通过给定函数将点分配给对象
- jenkins - 合并拉取请求的自动化速度测试
- php - 如何在 PHP 中将数据从一个 MySQL 表导出到另一个表?
- php - Laravel 5.7 如何从 Controller show($id) 函数中获取数据?使用的查询生成器
- ios - iOS CredStore 错误导致 Angular 承诺挂起等待响应
- sql - 合并外部表中的列
- java - 如何从服务获取响应的 JSON
- minishift - MiniShift 错误 virNetSocketReadWire:1806
- postgresql - 如何在postgresql中按特定条件按每个日期分组?
- excel - 根据另一工作簿中的数据从一个工作簿中删除行