为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Python中将列表中的字符串替换为int?

如何在Python中将列表中的字符串替换为int?

qq_笑_17 2023-10-26 16:43:22
在下面的列表中,我想将“Sun”替换为 0,将“Rain”替换为 1。我该怎么做?precipitation = ["Sun", "Rain", "Rain", "Sun", "Sun", "Sun", "Sun", "Sun", "Sun", "Sun", "Rain", "Rain", "Rain", "Rain"]for i in precipitation:    if precipitation[i] == "Sun":    precipitation[i] = 0  else:    precipitation[i] = 1
查看完整描述

4 回答

?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

您可以使用列表理解来做到这一点:

precipitation = [0 if x == 'Sun' else 1 for x in precipitation]


查看完整回答
反对 回复 2023-10-26
?
慕后森

TA贡献1802条经验 获得超5个赞

使用布尔值用数字表示为 0 和 1 的事实来详细阐述 @Gabip 的答案:

[int(x=='Sun') for x in precipitation]


查看完整回答
反对 回复 2023-10-26
?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞

添加到已经存在的答案中,使用map()

list(map(lambda x: 0 if x=='Sun' else 1,a))

您可以尝试这样做以避免循环和列表理解


查看完整回答
反对 回复 2023-10-26
?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

尝试这个...


precipitation = ["Sun", "Rain", "Rain", "Sun", "Sun", "Sun", "Sun", "Sun", "Sun", "Sun", "Rain", "Rain", "Rain", "Rain"]


for i in range(len(precipitation)):  

  if precipitation[i] == "Sun":

    precipitation[i] = 0

  else:

    precipitation[i] = 1

         

print(precipitation)


查看完整回答
反对 回复 2023-10-26
  • 4 回答
  • 0 关注
  • 77 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信