Python 3.x 如何输出循环中的每一行
此代码的目标是在列出天数时打印出一些列值。我得到的输出是第一天的列值Python 3.x 如何输出循环中的每一行,python-3.x,twilio-programmable-chat,Python 3.x,Twilio Programmable Chat,此代码的目标是在列出天数时打印出一些列值。我得到的输出是第一天的列值 days = final_merged_data['Day'].tolist() for day in days: each_row = final_merged_data[final_merged_data['Day'] == days] message_partition = f""" [{day}] Solar_Power_Generated in MW =
days = final_merged_data['Day'].tolist()
for day in days:
each_row = final_merged_data[final_merged_data['Day'] == days]
message_partition = f"""
[{day}]
Solar_Power_Generated in MW = {str(each_row['Power_Solar'].tolist()[0])}
Wind_Power_Generated in MW = {str(each_row['Power_Wind'].tolist()[0])}
Total_Power_Generated in MW = {str(each_row['Total MW'].tolist()[0])}"""
print(message_partition)
我得到的输出与第1行的列值相同
[12]
Solar_Power_Generated in MW = 26.48
Wind_Power_Generated in MW = 30.34
Total_Power_Generated in MW = 56.82
[13]
Solar_Power_Generated in MW = 26.48
Wind_Power_Generated in MW = 30.34
Total_Power_Generated in MW = 56.82
类似这样的内容应该适用于列字典:
rows = final_merged_data.tolist()
for row in rows:
message_partition = f"""
[{row['Day']}]
Solar_Power_Generated in MW = {str(row['Power_Solar'])}
Wind_Power_Generated in MW = {str(row['Power_Wind'])}
Total_Power_Generated in MW = {str(row['Total MW'])}"""
print(message_partition)
或者,如果所有列都存储为dict中的列表
rows = zip(final_merged_data['Day'].tolist(), final_merged_data['Power_Solar'].tolist(), final_merged_data['Power_Wind'].tolist(), final_merged_data['Total MW'].tolist())
for row in rows:
message_partition = f"""
[{row[0]}]
Solar_Power_Generated in MW = {str(row[1])}
Wind_Power_Generated in MW = {str(row[2])}
Total_Power_Generated in MW = {str(row[3])}"""
print(message_partition)
请提供需要为预期输出进行分析的输入示例。您的打印语句不在循环内。也许已经是这样了。如果没有,请提供有关输入和预期输出的更多信息。对于索引,您使用的是比较[final_merged_data['Day']==days],这将导致False always。列表索引相当于最终合并数据[0],因此始终显示第一行数据。@windstorm I已使用days=final\u merged\u data['Day']声明它。tolist()@tst。我将print语句移动到循环中,但得到了相同的结果hanks@windstorm。第二种解决方案效果很好。多亏了你,我学到了一些新东西。
rows = zip(final_merged_data['Day'].tolist(), final_merged_data['Power_Solar'].tolist(), final_merged_data['Power_Wind'].tolist(), final_merged_data['Total MW'].tolist())
for row in rows:
message_partition = f"""
[{row[0]}]
Solar_Power_Generated in MW = {str(row[1])}
Wind_Power_Generated in MW = {str(row[2])}
Total_Power_Generated in MW = {str(row[3])}"""
print(message_partition)