Python 我不知道如何设置列表,以便在第二次运行程序时移动到下一个元素
对于这个程序,我想将listPython 我不知道如何设置列表,以便在第二次运行程序时移动到下一个元素,python,user-interface,tkinter,Python,User Interface,Tkinter,对于这个程序,我想将listself.not\u served\u deluxe的第一个元素设置为101,然后如果第二次运行该程序,则第一个元素将移动到102。但是,我不知道下次运行程序时,为了让第二个元素成为第一个元素,应该使用什么方法。如果可能,有人能帮忙解决吗?第一个解释: 你可以创建一个新的变量,你调用一个计数器,然后每次它经过时计数,然后只做一个if语句 伪代码: 如果变量=1->execution1 否则->执行二 第二种解释: 因此,如果我理解正确,当程序运行1次时,您希望执行不同
self.not\u served\u deluxe
的第一个元素设置为101,然后如果第二次运行该程序,则第一个元素将移动到102。但是,我不知道下次运行程序时,为了让第二个元素成为第一个元素,应该使用什么方法。如果可能,有人能帮忙解决吗?第一个解释:
你可以创建一个新的变量,你调用一个计数器,然后每次它经过时计数,然后只做一个if语句
伪代码:
如果变量=1->execution1
否则->执行二
第二种解释:
因此,如果我理解正确,当程序运行1次时,您希望执行不同的程序。对吗?如果是,则创建一个变量,该变量计算您执行代码的频率,然后从此变量创建一个If语句,其中包含必要的语句。你明白我什么意思吗?或者我应该在哪个地方更详细地解释它如果您想在脚本运行之间存储某些内容,则应该将其写入文件。有许多选项,如
pickle
、csv
,或者只是打开一个文件并写入
打开(“./myfile.txt”,“w”)作为文件:
file.write(101)
下一轮
打开(“./myfile.txt”,“r”)作为文件:
文件室=(file.read())
# ... 在这里做事
打开(“./myfile.txt”,“w”)作为文件:
文件写入(房间+1)
对不起,我不明白这是什么。你能解释一下吗?如果我理解正确的话,当程序运行1次时,你希望执行不同的程序。对吗?如果是,则创建一个变量,该变量计算您执行代码的频率,然后从此变量创建一个If语句,其中包含必要的语句。你明白我什么意思吗?或者我应该在哪个地方更详细地解释它detail@Paul_Hofmann也许可以用解释更新答案任何建议的代码,这样我就可以理解如何在每次运行时将列表移动到下一个?我仍然不明白其含义。你想第三次从103开始吗?您需要跟踪函数被调用的次数。这里的一些东西可能会有帮助:是否可以运行第二次102然后第三次103,依此类推…?当然!只要从文件中读取值,递增,然后写回文件。我可以问一下,我是否希望存储在csv中,以便将数据一行一行地放到行中?是的,这样也可以。这似乎与您的问题不太相关,因此我不会更新答案,但有大量关于使用CSV执行此操作的优秀教程:那么每次运行前我是否需要更改?
def get_room(self):
if self.var2.get() == 'Deluxe Room':
self.not_served_deluxe = [x for x in range(101,200)]
self.served_deluxe = []
self.take_room = self.not_served_deluxe[0]
self.not_served_deluxe.remove(self.take_room)
self.served_deluxe.append(self.take_room)
self.room_win = tk.Tk()
self.room_win.geometry('400x600')
self.room_lb = tk.Label(self.room_win,text='Room No.',font=('Helvetica',20))
self.room_lb.grid(row=0,column=0,padx=20,pady=10)