csv - 使用类和 csv 文件进行转换
问题描述
import csv
class Converter:
def __init__(self,csv):
with open(csv) as f:
obj = csv.reader(f)
conversions = list(obj)
conversions.pop(0)
if __name__ == "__main__":
with open("table.csv", "w") as f:
f.write("type,ratio\ncm_to_inch,0.393701\ninch_to_cm,2.54")
cvt = Converter("table.csv")
r1 = cvt.convert(5.5, "cm", "inch")
r2 = cvt.convert(100, "inch", "cm")
print(f"{r1}\n{r2}")
所以我试图使用类将每个值从厘米转换为英寸,将英寸转换为厘米。这些转换率将写入 csv 文件。但是,当我激活此代码时, AttributeError: 'str' object has no attribute 'reader' 不断弹出。请帮忙
解决方案
尝试将构造函数参数的名称更改为 csv 以外的名称可能是一个解决问题,例如 csv_name,因为当您实际尝试在 csv.render() 调用中引用导入的 csv 模块时,这就是所指的内容。
推荐阅读
- reactjs - 使用 Apollo 重新获取会更新该查询的所有实例,即使使用不同的参数
- java - 发布到 Play 商店后不会自动提供 SYSTEM_ALERT_WINDOW 权限
- arrays - 将索引匹配公式转换为 VBA
- java - 字母数字列排序不正确
- python - 烧瓶中的Python参数验证类
- javascript - Redux 表单向导对象值验证
- docker - Docker Volume:持久化数据以便跨远程主机访问
- python-3.x - pyplot - 带有大量箭头注释的绘图非常慢
- laravel - 在我的刀片视图中使用 @if(Auth::user()) 是否与 @auth 相同?
- prestashop - 通过模块 Prestashop 1.7 在后台创建表单