gpt4 book ai didi

python - 如何在Python中从用户输入(日历选择)中获取日期/时间值

转载 作者:太空宇宙 更新时间:2023-11-03 19:52:23 25 4
gpt4 key购买 nike

我是 Python 新手,我正在尝试将传感器数据捕获到“totalList”中。这就是我所做的:

  # Initialize data frame
df1 = pd.read_csv(
"/Users/ME/Desktop/Frontend/sensor_points.csv",
dtype=object,
)
df = pd.concat([df1], axis=0)
df["Date/Time"] = pd.to_datetime(df["Date/Time"], format="%Y-%m-%d %H:%M")
df.index = df["Date/Time"]
df.drop("Date/Time", 1, inplace=True)
totalList = []
for month in df.groupby(df.index.month):
dailyList = []
for day in month[1].groupby(month[1].index.day):
dailyList.append(day[1])
totalList.append(dailyList)
totalList = np.array(totalList)

所以,我的问题是代码认为 月份 for 循环 中的月份值将始终迭代 1, 2, ..., 12 和 日期 for - 循环遍历 1,2,...,31。但这些并不能得到保证。因为我的 CSV 不包含所有月份和日期的数据,所以对于日历选择器上的某些日期,我会得到一个

'index-out-of-range' error for totalList

我知道这是因为实际上,totalList 的形状很大程度上取决于我的输入数据(CSV 文件)的内容。假设文件仅包含 3 个月的记录(例如一月、五月和十二月),则 len(totalList)==3

有谁知道如何解决这个问题吗?

最佳答案

您的问题将出在从您的网站访问 TotalList 上。 (您正在尝试访问列表中不存在的索引)您应该简单地包含一个 try/except 子句或方法来处理缺失值。请参阅以下示例:

>>> x = [1,2,3]
>>> x[0]
1
>>> x[4]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range
>>> try:
... x[4]
... except IndexError:
... print("No such value exists")
...
No such value exists

希望这有帮助。另一种方法是预先调整列表/数组的大小并填充一些虚拟变量并在访问中处理它

>>> x = ["empty"]*4
>>> x[0] = 1
>>> x[1] = 2
>>> x[2] = 3
>>> x
[1, 2, 3, "empty"]
>>> x[0]
1
>>> x[3]
'empty'

关于python - 如何在Python中从用户输入(日历选择)中获取日期/时间值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59755215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com