Python 从返回的CSV数据创建变量
我正在尝试使用Python和CSV文件创建一个简单的电影院预订系统,其中0是免费座位,1是空座位。此时,用户输入所需的座位和行数(A-J)。然后,程序应检查行在单个块中是否有可用空间 此时,它返回值0和1以及该行可用的空闲座位数。然而,我正在努力确定是否有一块足够大的免费座位可供选择。有什么想法吗 目前返回Python 从返回的CSV数据创建变量,python,csv,Python,Csv,我正在尝试使用Python和CSV文件创建一个简单的电影院预订系统,其中0是免费座位,1是空座位。此时,用户输入所需的座位和行数(A-J)。然后,程序应检查行在单个块中是否有可用空间 此时,它返回值0和1以及该行可用的空闲座位数。然而,我正在努力确定是否有一块足够大的免费座位可供选择。有什么想法吗 目前返回 0 0 0 0 0 1 1 1 1 1 A Spaces available: 5 使用代码 import csv Section = 0 LargeBlock = 0 Spaces
0
0
0
0
0
1
1
1
1
1
A
Spaces available: 5
使用代码
import csv
Section = 0
LargeBlock = 0
Spaces = 0
LastSpace = 0
SpacesReq = int(input("How many spaces do you require? (8 Max.) "))
while SpacesReq > 8:
print("Invalid amount.")
break
SectionReq = input("What row would you like to check between A- J? (Uppercase required) ")
with open('data.csv', 'rt') as file:
open_f = csv.reader(file, delimiter=',')
for line in open_f:
for item in line:
if line[10] == SectionReq:
print(item)
if item == "0":
Spaces = Spaces + 1
print("Spaces available: ", Spaces)
您正在寻找空块,所以在线循环是一个好主意:当遇到0时,增加块大小;如果遇到1,块大小应重置为0 <> P>但是如果你把你的台词当作字符串:,你就有更简单的东西了。
for line in open_f:
if line[10]==SectionReq:
SearchedBlock = '0'*SpacesReq
strLine = ''.join(str(i) for i in line)
if SearchBlock in strLine:
# empty block found
break