在C++中是否有以下if
-else
语句的Python版本或类似的语句:
int t = 0;
int m = t==0?100:5;
发布于 2011-12-14 14:38:58
您所指的构造称为ternary operator。Python有它的一个版本(从2.5版开始),如下所示:
x if a > b else y
发布于 2011-12-14 14:59:08
还有:
m = t==0 and 100 or 5
由于0是一个错误的值,我们可以这样写:
m = t and 5 or 100
这等同于第一个。
发布于 2020-03-17 10:33:51
我发现关键字pass-in中的第一个速记很方便。下面的例子显示了它在tkinter网格几何管理器中的使用。
class Application(Frame):
def rcExpansion(self, rows, cols, r_sticky, c_sticky):
for r in range(rows):
self.rowconfigure(r, weight=r)
b = Button(self, text = f"Row {r}", bg=next(self.colors))
b.grid(row=r, column= 0, sticky = N+S+E+W if r_sticky == True else None)
for c in range(cols):
self.columnconfigure(c, weight=c)
b = Button(self, text = f"Column {c}", bg=next(self.colors))
b.grid(row=rows, column = c, sticky = N+S+E+W if c_sticky == True else None)
app = Application(root=Tk())
app.rcExpansion(3, 4, True, False)
https://stackoverflow.com/questions/8500374
复制相似问题