Skip to main content
 首页 » 编程设计

python之压缩代码的技巧

2025年05月04日20cloudgamer

据我了解,python专门设计用于强制人们使用缩进,但是否有可能打破这一规则。例如:

y=[1,2,3] 
 
print('ListY:') 
    for x in y: 
        print(x) 

现在,我可以这样压缩最后两行:

for x in y:print(x) 

但我做不到:

print('ListY');for x in y:print(x) 

但是有办法吗?

请您参考如下方法:

首先,我应该说我同意这些技巧可能会有一些用处。不过,不会太频繁。一个很好的例子是 doctests 中的代码。它通常足够清晰,即使在压缩时也可读,并且使其紧凑通常比使其“尽可能可读”所产生的问题更少。但是,对于常规代码,加入行通常不是一个好习惯。当您无法在 if 或 for 语句中创建断点时,这通常是一个比额外的行更大的问题。如果您不练习此类技巧,覆盖工具也会提供更多信息。

但是,回答你的问题,似乎没有办法做你想做的事。使用 ; 有很多限制。 Compound statements不能与 ; 一起使用。通常这些限制是合理的,但有时我也很遗憾他们如此严格。

UPD:但是如果您非常专注于使其成为单线,则有很多技巧。例如,生成器和列表理解(而不是 for)、reduce() 等等,在 Python 3 中甚至 print() 都可以在它们内部使用。