编写一个名为“ csv_to_kvs”的函数,该函数将字符串作为参数来表示具有4列的CSV文件名,格式为“ string,float,float,float”,并返回一个新的键-值存储,将字符串映射到浮点数。 返回的键值存储将为文件中的每一行提供一对,其中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

如何将字典中的值转换为浮点数?

#1楼 票数: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

  ask by translate from so

未解决问题?本站智能推荐:

3回复

CSV读取文件困难

编写一个名为“ csv_to_kvs”的函数,该函数将字符串作为参数来表示具有4列的CSV文件名,格式为“ string,float,float,float”,并返回一个新的键-值存储,将字符串映射到浮点数。 返回的键值存储将为文件中的每一行提供一对,其中CSV文件的第一列中的键来自第三列中的
1回复

读取与库存相关的csv文件有困难

编写一个名为“ read_prices”的函数,该函数采用一个参数,该参数是贵公司在其投资组合中拥有的股票代码的列表。 您将为每个股票行情代码读取一个CSV文件,其中包含一年中每种股票的价格,并将这些价格返回到单个词典中。 返回的字典将包含股票代码作为键,将字典符号作为值,其中内部字典将日期
1回复

.csv文件读取困难

我试图读取C中的.csv文件(Excel的输出)。我认为该文件只是文本值,但是我在文件的开头发现了3个字符。 它们是(无符号字符):239、187、191。 由于我不期望这些值,所以我的读者会感到困惑并引起问题。 但是我一直找不到文档。 我从Excel将文件另存为UTF-8 .csv
3回复

CSV写入文件困难

我应该根据条件为我的CSV文件添加特定标签。 CSV文件有10列,第三,第四和第五列是最能影响条件的列,我在第十列添加了我的标签。 我这里的代码以无限循环结束: 我不知道它为什么会以无限循环结束。 编辑:我犯了一个错误,我原来的无限循环程序有这条线: 我将'a'更改为'
1回复

在不同列的 csv 文件中写入数据的困难

我试图根据两个不同的列在 .dat 文件中写出浮点型数据。 但是,当我尝试在不同的程序中提取相同的数据但作为 COLUMN-wise 时,我开始明白数据并不是第一眼就按照不同的列编写的。 有人可以建议出路吗?
2回复

动态读取 CSV 文件

更改后缀名称文件时,如何在 Python 中动态读取 CSV 文件? 例子: {}无法识别为“for 循环”。 我想读取列表项中不同的文件后缀名,并按照相同的规则创建不同的 DataFrame。
2回复

读取没有全名的 CSV 文件

这里对 Python 非常陌生。 我正在尝试从文件夹中读取文件,但不知道其全名。 例如AAA_05212021.csv是位于C:\\test\\中的文件名 AAA 是文件名的已知部分。 其余的每天都在变化。 我试过: ..但它似乎不起作用。 任何帮助将非常感激。 谢谢!
2回复

从csv文件读取为整数

我在从csv文件中读取数据作为整数时遇到一些麻烦,以下是我的csv文件的示例: 我想做的是从“ Col3”(不包括标题)中读取数据,将它们作为整数读入元组,以下是我的代码: 尝试此操作时,出现错误消息: 打印行示例: 我认为这是由于'Col3'中的值带有逗号引起的