将 str 转换为 float (python34)

Converting a str to a float (python34)

我的 python 脚本中有一部分出现此错误:

TypeError:+ 不支持的操作数类型:'float' 和 'str'

代码:

for proj in data['daily_projections']:
  proj['nba_player_id'] = float(proj['nba_player_id'])
  print(proj['fanduel_fp'] + ' ' + proj['nba_player_id'])

这是我目前拥有的,但无法正常工作。

'proj['fanduel_fp']'是浮点数,'proj['nba_player_id']'是我需要转换为浮点数的字符串

打印时将 proj['nba_player_id']proj['fanduel_fp'] 转换为字符串数据类型。

for proj in data['daily_projections']:
  proj['nba_player_id'] = float(proj['nba_player_id'])
  print(str(proj['fanduel_fp']) + ' ' + str(proj['nba_player_id']))

您可以使用不需要显式转换的 str.format

print('{0[fanduel_fp]} {0[nba_player_id]}'.format(proj))

>>> proj = {'nba_player_id': '1', 'fanduel_fp': 2}
>>> '{0[fanduel_fp]} {0[nba_player_id]}'.format(proj)
'2 1'