我是Python新手,請耐心等待。我嘗試使用切片提取列表中每個項目的前10個字符。該列表來自csv.reader函數。當我在csv.reader和我在代碼中創建的列表中使用它時,Slice似乎有不同的表現。 我的目錄timesheet.csv
包含以下值:從csv.reader切片清單
20/10/2015 09:10
20/10/2015 10:20
20/10/2015 16:30
21/10/2015 08:30
21/10/2015 09:45
21/10/2015 10:22
21/10/2015 14:01
我試圖刪除的時候才離開的日期。所以我想下面的代碼應該這樣做:
import csv
with open('timesheet.csv', 'r') as f:
reader = csv.reader(f)
your_list = list(reader)
for x in your_list:
current_date = x[:10]
print(current_date)
我,它預計到輸出:
20/10/2015
20/10/2015
20/10/2015
21/10/2015
21/10/2015
21/10/2015
21/10/2015
而是我得到一個完整的列表
20/10/2015 09:10
20/10/2015 10:20
20/10/2015 16:30
21/10/2015 08:30
21/10/2015 09:45
21/10/2015 10:22
21/10/2015 14:01
奇怪的是,如果我測試通過添加列表以不同的方式例如
your_list = ['21/10/2015 16:14', '20/10/2015 23:00']
for x in your_list:
current_date = x[:10]
print(current_date)
輸出是怎麼想的:
21/10/2015
20/10/2015
我認爲這是與片修剪列表項,而不是字符以內的項目數,但我不能相當明白爲什麼? 謝謝
縮進'CURRENT_DATE = X [:10]'正確下'for'環路它屬於 – Pynchia
嘗試打印'x',你會發現它是一個列表。你可能需要'x [0] [:10]'。 – tdelaney