Tôi tương đối mới ở đây, vì vậy xin vui lòng cho tôi biết nếu có bất cứ điều gì tôi nên biết hoặc bất kỳ sai lầm tôi đang làm theo cách khôn ngoan!Thêm phần tử vào từ điển trong python?
Tôi đang cố gắng thêm mọi thứ vào từ điển thông qua lựa chọn ngẫu nhiên, nhưng mã của tôi dường như không hoạt động!
Các tập tin: sports.txt
Soccer, Joshua
Lacrosse, Naome Lee
Soccer, Kat Valentine
Basketball, Huong
Tennis, Sunny
Basketball, Freddie Lacer
mã của tôi cho đến nay:
def sportFileOpen():
sportFile = open("sport.txt")
readfile = sportFile.readlines()
sportFile.close()
return(readfile)
def sportCreateDict(sportFile):
sportDict = {}
for lines in sportFile:
(sport, name) = lines.split(",")
if sport in sportDict:
sportDict[sport].append(name.strip())
else:
sportDict[sport] = [name.strip()]
return(sportDict)
def sportRandomPick(name, sport, sportDict):
if sport in sportDict:
ransport = random.choice(sportDict.keys())
sportDict[ransport].append(name)
print(name, "has been sorted into", ransport)
def main():
sportFile = sportFileOpen()
sportDict = sportCreateDict(sportFile)
name = input("Enter the name: ")
preferredSport = input("Which sport do they want? ")
sportRandomPick(name, preferredSport, sportDict)
main()
Tôi cố gắng để cho phép người dùng nhập tên của họ và nhóm ưa thích thể thao, và bất cứ môn thể thao họ thích sẽ có cơ hội được chọn ngẫu nhiên cao hơn những người khác (ví dụ nếu Jason chọn bóng đá, cơ hội nhận bóng của anh ấy có thể tăng gấp đôi).
Tôi không mong đợi bất cứ ai viết mã cho tôi, tôi biết nó tốn thời gian và bạn có những việc tốt hơn để làm! Nhưng bất cứ ai có thể giải thích cho tôi làm thế nào tôi sẽ đi về việc này? Tôi hiểu làm thế nào để thực hiện lựa chọn ngẫu nhiên nhưng tôi không biết làm thế nào tôi sẽ "tăng gấp đôi" cơ hội.
Ngoài ra tôi cứ bị lỗi này khi chạy mã của tôi: NameError: global name 'random' is not defined
Tôi nghĩ rằng tôi đã làm điều đó một phần đúng, nhưng bây giờ tôi đang mắc kẹt. Bất cứ ai có thể cho hai xu của họ về điều này?
Bạn cần phải nhập khẩu các mô-đun ngẫu nhiên. Chỉ cần thêm mã này vào đầu mã của bạn: 'nhập ngẫu nhiên'. Điều đó sẽ chăm sóc lỗi anyway. –
ohhh Tôi hiểu rồi! Cảm ơn bạn!! – Typhoon2