python - bacnet_scan 输出 csv 文件错误 TypeError: a bytes-like object is required, not 'str'
问题描述
运行 bacnet_scan.py 时,它看起来像这样:
(volttron) (base) bartlino@bartlino-Latitude-E5530-non-vPro:~/Desktop/volttron/scripts/bacnet$ python bacnet_scan.py
Device Address = <Address 192.168.0.190>
Device Id = 0
maxAPDULengthAccepted = 1476
segmentationSupported = noSegmentation
vendorID = 245
Device Address = <Address 192.168.0.102>
Device Id = 3056183
maxAPDULengthAccepted = 1024
segmentationSupported = segmentedBoth
vendorID = 842
Device Address = <RemoteStation 12345:2>
Device Id = 201201
maxAPDULengthAccepted = 286
segmentationSupported = noSegmentation
vendorID = 11
尝试添加 csv 文件输出python bacnet_scan.py --csv-out ~/Desktop/volttron/configs/test_mult.csv
我收到一个错误:
Traceback (most recent call last):
File "bacnet_scan.py", line 203, in <module>
this_csv_file.writeheader()
File "/home/bartlino/anaconda3/lib/python3.8/csv.py", line 143, in writeheader
return self.writerow(header)
File "/home/bartlino/anaconda3/lib/python3.8/csv.py", line 154, in writerow
return self.writer.writerow(self._dict_to_list(rowdict))
TypeError: a bytes-like object is required, not 'str'
有小费吗?
解决方案
如果您没有使用最新的开发分支,我建议您先尝试一下,因为在 8.0 版本之后接受了一个 PR,它修复了与此脚本输出中的字节与字符串相关的问题。我也不确定它们是如何交互的,但是您当前似乎激活了 2 个虚拟环境,并且它可能与某些版本控制相混淆......因为它的 Python3.8 用于您的 Anaconda,我对此表示怀疑,但它需要考虑。
推荐阅读
- c# - C# 中的 HMAC SHA256 与 Swift 中的 HMAC SHA256 不匹配
- flutter - 不能在 Flutter(Dart) 中使用 final
- linux - 如何使用XPM文件制作图标
- c# - 底层连接已关闭:发送时发生意外错误。在 C# 中
- angular - Angular 服务在开发中工作,但由于与表单相关的导入而在生产中失败
- java - 如何通过改造对象内的对象来解析 json 数据?
- reactive-programming - Spring Reactive 实现多次调用 db
- php - 网站阻止来自我的虚拟主机和本地主机的 PHP CURL 调用,但不阻止来自其他主机的 PHP CURL 调用
- linux - 获取 Job id 并将它们放入 bash 命令
- c++ - 调用原子的store()时可以调用基类型类的函数吗?C++