为什么 Python 中的 if/while/def/class 语句需要冒号?


在 Python 中,所有这些关键字(if、while、def、class 等)都需要冒号以增强可读性。对于具有语法突出显示功能的编辑器而言,冒号使其更易于使用;即,它们可以查找冒号来确定何时需要增加缩进。

让我们看一个 if 语句的示例:

if a == b
   print(a)

以及:

if a == b:
   print(a)

第二个示例更易于阅读、理解和缩进。这使得冒号的使用颇为流行。

def 和 if 关键字的示例

我们这里有一个带有冒号的 def 中的 if 语句,我们将统计元组中某个元素出现的次数:

def countFunc(myTuple, a): count = 0 for ele in myTuple: if (ele == a): count = count + 1 return count # Create a Tuple myTuple = (10, 20, 30, 40, 20, 20, 70, 80) # Display the Tuple print("Tuple = ",myTuple) # The element whose occurrence is to be checked k = 20 print("Number of Occurrences of ",k," = ",countFunc(myTuple, k))

输出

('Tuple = ', (10, 20, 30, 40, 20, 20, 70, 80))
('Number of Occurrences of ', 20, ' = ', 3)

明确地,对于具有冒号的单个程序中的 def 和 if 语句,程序更易于阅读和缩进。

类示例

让我们看一个带有冒号的类的示例: 

class student: st_name ='Amit' st_age ='18' st_marks = '99' def demo(self): print(self.st_name) print(self.st_age) print(self.st_marks) # Create objects st1 = student() st2 = student() # The getattr() is used here print ("Name = ",getattr(st1,'st_name')) print ("Age = ",getattr(st2,'st_age'))

输出

('Name = ', 'Amit')
('Age = ', '18')

更新于:2022 年 9 月 20 日

636 次浏览

开启你的 职业生涯

完成课程并获得认证

开始学习
广告