from urllib import request

response = request.urlopen("https://jsonplaceholder.typicode.com/users")
json_response = response.read()
import json

users = json.loads(json_response)
print(users)


for user in users:
    print(user)


from pprint import pprint

pprint(users)

pprint(users, depth=1)

pprint(users, depth=2)

pprint(users[0], depth=1)

pprint(users[0], depth=1, sort_dicts=False)

pprint(users[0], depth=1, indent=4)

pprint(users[0], depth=2, indent=4)

pprint(users[0])

pprint(users[0], width=160)

pprint(users[0], width=500)

pprint(users[0], width=5)

with open("output.txt", mode="w") as file_object:
    pprint(users, stream=file_object)


from pprint import pp

pp(users)


from pprint import pformat

address = pformat(users[0]["address"])
chars_to_remove = ["{", "}", "'"]
for char in chars_to_remove:
    address = address.replace(char, "")

print(address)


"""

# python 3.10
from pprint import PrettyPrinter
custom_printer = PrettyPrinter(
    indent=4,
    width=100,
    depth=2,
    compact=True,
    sort_dicts=False,
    underscore_numbers=True
)

custom_printer.pprint(users[0])


number_list = [123456789, 10000000000000]
pprint(number_list, underscore_numbers=True)
"""
