Files
CursoPythonDavidBombal/m01b_intermediate/l_11_comprehensions.py
Antonio Torres Míguez 8456ae9c2a ultimos cambios
2021-01-11 11:19:10 +01:00

52 lines
1.8 KiB
Python

device_str = " r3-L-n7, cisco, catalyst 2960, ios , extra stupid stuff "
# NON LIST COMPREHENSION WAY
device = list()
for item in device_str.split(","):
device.append(item.strip())
print("\ndevice using for loop:\n\t\t", device)
# LIST COMPREHENSION
device = [item.strip() for item in device_str.split(",")]
print("\ndevice using list comprehension:\n\t\t", device)
# SIMPLER LIST COMPREHENSION
device_info_list = device_str.split(",")
device = [item.strip() for item in device_info_list]
print("\ndevice using simpler list comprehension:\n\t\t", device)
# LIST COMPREHENSION WITH CONDITIONAL
device = [item.strip() for item in device_str.split(",") if "stupid" not in item]
print("\ndevice using list comprehension with conditional:\n\t\t", device)
device_info = [
("name", "r3-L-n7"),
("vendor", "cisco"),
("model", "catalyst 2960"),
("os", "ios"),
]
# DICT COMPREHENSION FROM LIST OF TUPLES
device = {item[0]: item[1] for item in device_info}
print("\ndevice using dict comprehension:\n\t\t", device)
print("device nicely formatted:")
for key, value in device.items():
print(f"{key:>16s} : {value}")
device_info_str = "name:r3-L-n7, vendor:cisco, model:catalyst 2960, os:ios, version:12.1(T)"
# LIST THEN DICT COMPREHENSION FROM STRING
device_info_pairs = [kv_pair.split(":") for kv_pair in device_info_str.split(",")]
device = {item[0]: item[1] for item in device_info_pairs}
print("\ndevice using list and dict comprehension:\n\t\t", device)
print("device nicely formatted:")
for key, value in device.items():
print(f"{key:>16s} : {value}")
# DICT COMPREHENSION FROM STRING
device = {item.split(":")[0]: item.split(":")[1] for item in device_info_str.split(",")}
print("\ndevice using dict comprehension:\n\t\t", device)
print("device nicely formatted:")
for key, value in device.items():
print(f"{key:>16s} : {value}")