编写一个名为“ csv_to_kvs”的函数,该函数将一个字符串作为参数来表示CSV文件的名称,该文件具有4列,格式为“字符串,浮点,浮点,浮点”,并返回一个新的键值存储映射字符串到浮点数字。返回的键值存储将为文件中的每一行提供一对,其中CSV文件的第一列中的键来自第三列中的值。 (下面的代码)
import csv
def csv_to_kvs(string):
with open(string) as f:
my_file = csv.reader(f)
my_dict = {}
for row in my_file:
my_dict[row[0]] = row[2]
return my_dict
如何将字典中的值转换为浮点数?
答案 0 :(得分:0)
使用投射。
有时可能要在变量上指定类型。这可以通过铸造来完成。 Python是一种面向对象的语言,因此它使用类来定义数据类型,包括其原始类型。
因此,使用构造函数在python中进行铸造:
int()-从整数文字,浮点文字(通过四舍五入到前一个整数)或字符串文字(假设字符串代表整数)构造一个整数
float()-根据整数文字,浮点文字或字符串文字(如果字符串代表浮点数或整数)构造一个浮点数
str()-根据各种数据类型构造字符串,包括字符串,整数文字和浮点文字
参考:https://www.w3schools.com/python/python_casting.asp
您的代码应如下所示:
import csv
def csv_to_kvs(string):
with open(string) as f:
my_file = csv.reader(f)
my_dict = {}
for row in my_file:
my_dict[row[0]] = float(row[2])
return my_dict