提问人:Hazel P 提问时间:7/23/2023 最后编辑:Hazel P 更新时间:7/24/2023 访问量:59
如何提高该程序的可读性?
How to improve this program's readability?
问:
我正在学习 Python 字典的基础知识,并正在练习在列表中嵌套字典。它基本上告诉我制作 3 本关于 3 个人的词典,将它们嵌套在一个列表中,循环遍历列表,并打印出每个人的信息。 我已经有了我想要的输出,但我的打印语句很难阅读很多\n。您能提出其他提高可读性的方法吗?
我的代码:
friend_1 = {
"first_name": "Tu",
"last_name": "Le",
"age": 18,
"city": "Hanoi"
}
friend_2 = {
"first_name": "Hao",
"last_name": "Do",
"age": 18,
"city": "Hanoi"
}
friend_3 = {
"first_name": "Hieu",
"last_name": "Tran",
"age": 18,
"city": "HCMC"
}
friends = [friend_1, friend_2, friend_3]
for friend in friends:
print(f"\nFirst name: {friend['first_name'].title()}\nLast name: {friend['last_name'].title()}\nAge: {friend['age']}\nCity: {friend['city'].title()}")
输出如下所示:
First name: Tu
Last name: Le
Age: 18
City: Hanoi
答:
1赞
Sayse
7/23/2023
#1
假设问题出在 print 语句中的显示方式,您可以利用 print 可以接受大量参数进行打印的事实,然后指定一个 arator,该 arator 可用于定义如何分离包含在 print 语句中的所有单个元素sep
print(
f"First name: {friend['first_name'].title()}",
f"Last name: {friend['last_name'].title()}",
f"Age: {friend['age']}",
f"City: {friend['city'].title()}",
sep="\n"
)
1赞
cao-nv
7/24/2023
#2
我知道你得到了预期的答案,但我还是想给你一个小例子,说明如何控制打印数据结构的方式,以及如何避免重复使用某个字符。
class Person:
def __init__(self, first_name: str, last_name: str, age: int, city: str):
self.dict = {"first_name": first_name,
"last_name": last_name,
"age": age,
"city": city}
def __str__(self):
s = "\n".join([f'Fist name: {self.dict["first_name"].title()}',
f'Last name: {self.dict["last_name"].title()}',
f'Age: {self.dict["age"]}',
f'City: {self.dict["city"]}'])
return s
friend_1 = Person("Hieu", "Tran", 18, "HCMC")
print(friend_1)
评论
print("first\nsecond")
print("first")
print("second")