python - 用户创建指定类的对象
问题描述
Python 和编程的绝对初学者,我正在尝试创建一个程序,用户可以在其中添加会议并存储它们,有点像日历。
这样做时,我创建了一个类会议,有 4 个参数(名称、开始时间、结束时间、链接)
class Meeting:
def __init__(self, name, start_time, end_time, link):
self.name = name
self.start_time = start_time
self.end_time = end_time
self.link = link
在 app.py 文件中,我输入了这个:
from Meeting import Meeting
def meetings_count(meeting_count1):
meeting_count1 += 1
return meeting_count1
def ask_meeting(meeting_count2):
answer = input("Do you want to add a new meeting?: ")
if answer == "yes":
meeting_count2 = meetings_count(meeting_count2)
print("Number of meetings: " + str(meeting_count2))
name = input("\nName: ")
start_time = input("Start time: ")
end_time = input("End time: ")
link = input("Link: ")
add_meeting(name, start_time, end_time, link, meeting_count2)
def add_meeting(name1, start_time1, end_time1, link1, meeting_count3):
# code that creates something like this but instead of the line bellow,
Meeting1 = Meeting(name1, start_time1, end_time1, link1)
# creates an object named "Meeting" + meeting_count3
# if that is possible, then I can store different meetings(in the form of objects)
print("\n" + Meeting1.name)
print(Meeting1.start_time)
print(Meeting1.end_time)
print(Meeting1.link + "\n")
print("Number of meetings: " + str(meeting_count3) + "\n")
ask_meeting(meeting_count3)
meeting_count = 0
ask_meeting(meeting_count)
我已经在网上看到了“变量”和“字典用法”,但这只是让我感到困惑,因为这些项目具有更高的复杂性。
编辑:澄清一下,我确实知道列表和字典是什么。我的问题是,当我创建第一个会议时,它被识别为对象 Meeting1,但是当我尝试创建第二个会议时,它会覆盖第一个会议。我想做的是以它等于的方式创建类会议的对象:
Meeting(meeting_count) = Meeting(name1, start_time1, end_time1, link1)
这样,创建的第一个会议将是对象 Meeting1,第二个会议将是对象 Meeting2,依此类推。
EDIT2:阅读您的答案后,我了解到可以使用列表而不是类来编码这样的程序。谢谢大家花时间和耐心来对付像我这样的傻瓜:D
谢谢!
解决方案
如果您想存储您的会议,您可以创建一个空列表并在添加会议功能中将每个会议添加到其中。
空列表:meetings=[]
添加到列表:meetings.append(Meeting1)
更多关于列表的信息:https
://www.w3schools.com/python/python_lists.asp
您可以稍后按日期或根据需要对会议进行排序。此处排序示例:如何根据对象的属性对对象列表进行排序?
推荐阅读
- rpm - 为什么 rpm 重新安装在 %post 部分之后执行 %postun
- python - 尝试在 while 中添加两个输入
- javascript - 防止 React 最终表单步骤验证错误显示
- ios - 如何在 NSSecureCoding 中使用 CVImageBuffer 属性?
- api - Ecobee 开发者 API -- 举行活动
- linux - 如何在 shell 脚本中获取特定文件夹的文件名列表?
- python - 当不同列中的值在两个值之间时,Python需要获取一列数据的平均值或平均值
- angular - Angular 11:尝试使用 combineLatest 为对象赋值
- openapi - 基于 Maven 的示例引发异常
- mysql - 带有正则表达式的 MySQL 查询