Python Forum
A Dictionary in a Dictionary Syntax
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
A Dictionary in a Dictionary Syntax
#1
I'm getting a syntax error for the following code that I copied form a text book:

Code:

users = {
    "aeinstein": {
        "first": "albert",
        "last": "einstein",
        "location": "princeton"
        },
    
    "mccurie": {
        "first": "marie",
        "last": "curie",
        "location": "paris",
        },
    }

for username, user_info in users.items():
    print("f\nUsername: {username}")
    full_name = f"{user_info["first"]} {user_info["last"]}"
    location = user_info["location"]
    
    print(f"\tFull name: {full_name.title()}")
    print("f\tlocation: {location.title()}")
Here is the line that Python (Spyder) doesnt't like:

full_name = f"{user_info["first"]} {user_info["last"]}"
Reply
#2
You need to either use triple quotes or single quotes for the string (or the keys). Otherwise Python will try to end the string at the second double quote it finds, so the line would ne syntactically invalid.
Reply
#3
If I only change the keys the single quotes( 'aeinstein' and 'mccurie') I'm still getting an error message in the full_name line though, or do I need to change in other parts of the code?
Reply
#4
Problem is that you have strings within a string. Python can't tell where one begins and the other one ends. you have three ways to fix this.
1. change the outer string from double quotes to single quotes.
    full_name = f'{user_info["first"]} {user_info["last"]}'
2. change the inner strings to use single quotes
    full_name = f"{user_info['first']} {user_info['last']}"
3. use the format() method
    full_name = "{} {}".format(user_info["first"],user_info["last"])
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Modifying a dictionary recursively SpongeB0B 2 274 May-12-2024, 04:09 PM
Last Post: Gribouillis
  Sort a list of dictionaries by the only dictionary key Calab 2 732 Apr-29-2024, 04:38 PM
Last Post: Calab
Question Using Lists as Dictionary Values bfallert 8 608 Apr-21-2024, 06:55 AM
Last Post: Pedroski55
  Matching Data - Help - Dictionary manuel174102 1 477 Feb-02-2024, 04:47 PM
Last Post: deanhystad
  Dictionary in a list bashage 2 664 Dec-27-2023, 04:04 PM
Last Post: deanhystad
  filtering a list of dictionary as per given criteria jss 5 825 Dec-23-2023, 08:47 AM
Last Post: Gribouillis
  need to compare 2 values in a nested dictionary jss 2 970 Nov-30-2023, 03:17 PM
Last Post: Pedroski55
  python dictionary is that a bug ? rmangla 2 664 Sep-27-2023, 05:52 AM
Last Post: DPaul
  python dictionary syntax nafshar 2 937 Apr-24-2023, 07:26 PM
Last Post: snippsat
  Printing specific values out from a dictionary mcoliver88 6 1,535 Apr-12-2023, 08:10 PM
Last Post: deanhystad

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020