Hướng dẫn delete dictionary from json python - xóa từ điển khỏi json python

Bạn đang đi đúng hướng, pop nên làm việc. Tôi đã thay đổi mã của bạn để 'danh bạ' là một từ điển thay vì một danh sách. Sau đó, các hồ sơ có thể trông giống như:

contacts = {'Aname':{'name': name,
                     'phone': phone,
                     'email': email
                     },
            'Bname':{'name': name,
                     'phone': phone,
                     'email': email
                    }
           }

Sau đó, bạn có thể sử dụng tên làm khóa cho một đối tượng từ điển lồng nhau chứa tên, điện thoại và email. Tên xóa bây giờ có thể sử dụng EDACTS.pop [contact_name]. Tôi đã thực hiện một vài thay đổi đối với mã để thực hiện điều này.

# Import Collections to use Ordered Dictionary
import collections

# Module used to save contacts to database
import json

# The main class
def main[]:

    # Creates an empty list of contacts
    contacts = collections.OrderedDict[]
    loop = True

    # Create a while loop for the menu that keeps looping for user input until loop = 0
    while loop == True:

        # Prints menu for the user in command line
        print """
        Contact Book App
        a] New Contact
        b] List Contacts
        c] Search Contacts
        d] Delete Contact
        e] Quit
         """

        # Asks for users input from a-e
        userInput = raw_input["Please select an option: "].lower[]

        # OPTION 1 : ADD NEW CONTACT
        if userInput == "a":
            contact_name = raw_input["Enter name: "].title[]

            contacts[contact_name] = {'name': contact_name,
                                     'phone': raw_input["Enter phone: "],
                                     'email': raw_input["Enter email: "]
                                     }

            json.dump[contacts, open['contacts.json','w']]

            print "Contact Added!"
            # For Debugging Purposes
            # print[contacts]

        # OPTION 2 : LIST ALL CONTACTS
        elif userInput == "b":
            print "Listing Contacts"
            try:
                contacts = json.load[open['contacts.json','r']]
                name_keys = list[contacts.keys[]]
            except:
                contacts = {}

            print "%-30s %-30s %-30s" % ['NAME','PHONE','EMAIL']

            for k in name_keys:
                print "%-30s %-30s %-30s" % [contacts[k]['name'], contacts[k]['phone'], contacts[k]['email']]

        # OPTION 3 : SEARCH CONTACTS
        elif userInput == "c":
            print "Searching Contacts"
            search = raw_input["Please enter name: "]
            # Want to be able to search contacts by name, phone number or email
            try:
                contacts = json.load[open['contacts.json','r']]
            except:
                contacts = []

            try:
                print "%-30s %-30s %-30s" % [contacts[search]['name'], contacts[search]['phone'], contacts[search]['email']]
            except KeyError:
                print "Not Found"

        # OPTION 4 : DELETE A CONTACT
        elif userInput == "d":
            print "Deleting Contact"
            contact_name = raw_input["Enter Contact Name: "]
            contacts = json.loads[open['contacts.json'].read[]]

            try:
                contacts.pop[contact_name]
                json.dump[contacts, open['contacts.json','w']]
            except KeyError:
                print "Contact Not Found"


        # OPTION 5 : QUIT PROGRAM
        elif userInput == "e":
            print "Quitting Contact Book"
            loop = False
        else:
            print "Invalid Input! Try again."


main[]

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:49 [UTC/GMT +8 giờ]

Từ điển Python: Bài tập-12 với giải pháp

Viết một chương trình Python để xóa một khóa từ từ điển.

Giải pháp mẫu:-:-

Mã Python:

myDict = {'a':1,'b':2,'c':3,'d':4}
print[myDict]
if 'a' in myDict: 
    del myDict['a']
print[myDict]

Đầu ra mẫu:

{'a': 1, 'b': 2, 'c': 3, 'd': 4}
{'b': 2, 'c': 3, 'd': 4}

Trình bày bằng hình ảnh:


Trực quan hóa thực thi mã Python:

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực hiện chương trình đã nói:

Trình chỉnh sửa mã Python:

Có một cách khác để giải quyết giải pháp này? Đóng góp mã của bạn [và nhận xét] thông qua Disqus.

Trước đây: Viết chương trình Python để nhân tất cả các mục trong từ điển. Write a Python program to multiply all the items in a dictionary.
Next: Write a Python program to map two lists into a dictionary.

Mức độ khó của bài tập này là gì?

Kiểm tra kỹ năng lập trình của bạn với bài kiểm tra của W3Resource.

Python: Lời khuyên trong ngày

Tạo UUID:

# This creates a randomized 128-bit number that will almost certainly be unique.
# In fact, there are over 2122 possible UUIDs that can be generated. That's over five undecillion [or 5,000,000,000,000,000,000,000,000,000,000,000,000].

>>> import uuid
>>> user_id = uuid.uuid4[]
>>> user_id 
UUID['7c2faedd-805a-478e-bd6a-7b26210425c7']

  • Bài tập: Top 16 chủ đề phổ biến nhất hàng tuần
  • Bài tập SQL, Thực hành, Giải pháp - Tham gia
  • Bài tập SQL, Thực hành, Giải pháp - Quan sát phụ
  • JavaScript Basic - Bài tập, Thực hành, Giải pháp
  • Java Array: Bài tập, Thực hành, Giải pháp
  • C Bài tập lập trình, Thực hành, Giải pháp: Tuyên bố có điều kiện
  • Cơ sở dữ liệu nhân sự - Sắp xếp bộ lọc: Bài tập, Thực hành, Giải pháp
  • C Bài tập lập trình, Thực hành, Giải pháp: Chuỗi
  • Các loại dữ liệu Python: Từ điển - Bài tập, Thực hành, Giải pháp
  • Câu đố lập trình Python - Bài tập, Thực hành, Giải pháp
  • Mảng C ++: Bài tập, Thực hành, Giải pháp
  • Báo cáo và vòng lặp có điều kiện JavaScript - Bài tập, Thực hành, Giải pháp
  • Thuật toán cơ bản C# Sharp: Bài tập, Thực hành, Giải pháp
  • Python Lambda - Bài tập, Thực hành, Giải pháp
  • Python Pandas DataFrame: Bài tập, Thực hành, Giải pháp
  • Công cụ chuyển đổi
  • JavaScript: HTML Mẫu xác thực

Bài Viết Liên Quan

Chủ Đề