python - python测试:写入3,读取2
问题描述
我正在使用一个主要读取和写入文件并且需要在 python2 和 python3 中互操作的库。我发现有时由于字符串表示等原因,无法在 python2 中打开用 python3 编写的文件。我还看到不同版本的泡菜也会出现类似的问题。我想为 py2/py3 互操作性编写测试。编写使用多个 python 会话进行单个测试的测试的最佳方法是什么?子流程在这里有用吗?
解决方案
对于 python 2 和 3,文件可以以相同的方式打开。现在,如果您存储字符串表示形式和/或 pickle 数据,文件内容可能会有所不同,但可以通过不使用这些结构来避免这种情况 - 改用一些常见的数据格式,如 json 或一个 sql 数据库,甚至是一个简单的 csv 文本文件。然后你的文件将在 python 2 和 3 上读取相同的内容。
推荐阅读
- swiftui - SwiftUI:如何在 ListView 中使用绑定变量
- python - 如何将“搜索栏”链接到搜索视图 Django
- git - 如何重用已推送到远程的标签以用于稍后合并的代码
- php - nginx - php connect() unix socket 失败
- html - 如何使用两个指向同一元素的链接,一个作为主链接,另一个作为 HTML 中的故障保护?
- blazor - 在 Blazor 中为 SelectPDF 添加文件流(服务器端)
- python - 使用 Python 将 DICOM 标记转换为 Excel 时出错
- java - 将一个数组中的数据传输到两个数组的方法?
- mysql - 游标选择的 MySQL 存储过程语法错误
- ios - Mac Catalyst for Mac 菜单栏中的 NSPopover