IndexError:通过使用Raspberry pi在Python中的元组索引超出范围

问题描述

这是用于计算太阳辐射的代码,但是当我尝试运行该代码时,出现此错误

   Parsed config:  None
Traceback (most recent call last):
  File "/home/pi/SolarRadiationPlugin-master/run_plugin.py",line 13,in <module>
    print('Sunrise: {0}\r\nSunset: {1}'.format(solar_radiation.get_sunrise_sunset()))
IndexError: tuple index out of range

我不确定为什么会显示错误

这是主要代码

https://github.com/UBayouski/SolarRadiationPlugin

解决方法

{solar_radiation.get_sunrise_sunset()返回长度为2的元组。要将其用于字符串格式,可以使用*解开元组。

print('Sunrise: {0}\r\nSunset: {1}'.format(*solar_radiation.get_sunrise_sunset()))

我认为,可以通过在打印前定义值来提高可读性。

sunrise,sunset = solar_radiation.get_sunrise_sunset()
print('Sunrise: {0}\r\nSunset: {1}'.format(sunrise,sunset))

或带有f弦

sunrise,sunset = solar_radiation.get_sunrise_sunset()
print(f'Sunrise: {sunrise}\r\nSunset: {sunset}'