Python:什么是半冒号?

我在线获得了一个函数来帮助我处理当前的项目,并且在一些行上有分号。 我想知道为什么? 是否打破function?

def containsAny(self, strings=[]): alphabet = 'abcdefghijklmnopqrstuvwxyz0123456789' for string in strings: for char in string: if char in alphabet: return 1; return 0; 

function我上网很less修改:

 for string in strings: for char in string: if char in alphabet: return 1; 

这是说吗

 if char in alphabet: return 1 break 

感谢您的帮助。

分号在你显示的代码中什么都不做。

我怀疑这是用另一种语言(C,Java,…)编程的人,在语句结尾需要分号,这只是一种习惯(有时也会发生)。

如果你想把几条Python语句放在同一行,你可以使用分号分隔它们,参见这个Python Doc :

套件是由一个子句控制的一组语句。 套件可以是一个或多个以分号分隔的简单语句,与标题的冒号位于同一行,也可以是后续行中的一个或多个缩进语句

这里的分号不会做任何事情。 来自C / C ++ / Java /(许多其他语言)背景的人往往习惯使用分号。

正如其他答案指出的,分号在那里什么都不做。 这是一个分隔符(例如, print 1;print 2 )。 但是它不能这样工作: def func():print 1;print 2;;print'Defined!';;是一个语法错误)。 出于习惯,人们倾向于使用它(正如C / Java等语言所要求的那样)。

程序员的C,C + +,Java习惯于使用分号来告诉编译器,这是语句的结束,但是对于Python而言,情况并非如此

原因是在Python中,换行符是分隔代码行的明确方式; 这是通过devise,而这个工作的方式已经彻底的思考过了。 因此,Python代码是完全可读和明确的,没有任何特殊的语句结束标记(除了换行符)。