你可以尝试使用future import语句来添加对大括号的支持,但是目前还不支持,因此会出现语法错误:
>>> from __future__ import braces
File "<stdin>", line 1
SyntaxError: not a chance
a_dict = {
'key': 'value',
}
可以。花括号不使用。相反,您可以使用:
符号引入新的代码块,如下所示:
if True:
do_something()
something_else()
else:
something()
Python with Braces是Python的一个变体,让你可以做到这一点。 这是我最近和我的朋友一起合作开展的项目。
>>> from __future__ import braces
File "<stdin>", line 1
SyntaxError: not a chance
这解释了很多问题。
但需要注意的是,Python原生支持花括号代码块!请看下面:
if x: #{
x += 1
#}
对于Ada或Pascal程序员,我很高兴向您透露:
if x: #BEGIN
...
#END
来源于文档:
Python的解析器还足够复杂,可以识别混合标记,并且甚至会捕捉缺少开头或结尾分隔符的情况,并为用户纠正程序。这允许以下内容被识别为合法的Python代码:
if x: #BEGIN
x = x + 1
#}
对于Bash用户来说:
if x:
x=99
#fi
if x:
do_stuff()
很好。正如之前提到的,Python还可以自动更正具有不正确分隔符的代码,因此以下代码也是合法的:
if x:
do_a_hundred_or_more_statements()
x = x + 1
print(x)
由于这一点,它肯定会让你更加热爱Python。我在文档中留下最后一句话送给你。
从这一系列的例子中可以看出,Python已经将解析器技术和代码识别能力推进到了远远超越传统语言的前沿水平。它以一种精心平衡好的编程风格与老程序员需要用舒适的语言语法来编写代码之间的需求。
唯一的限制是这些特殊分隔符必须在一个井号符号的前面。
if True:
#dosomething
else:
#dosomething else
#continue on with whatever you were doing
基本上,无论你原来在哪里使用开括号,现在都需要使用冒号。取消缩进以关闭该区域。不需要很长时间就能感觉完全自然。
Python 不使用花括号来表示代码块:
>>> while True {
File "<stdin>", line 1
while True {
^
SyntaxError: invalid syntax
>>> from __future__ import braces
File "<stdin>", line 1
SyntaxError: not a chance
j = 0
for i in range(0, 10):
j += i
print(j)
是的,你可以使用这个库/包{ Py }。 使用花括号代替缩进,还增加了更多糖来改进Python的语法。
https://pypi.org/project/brackets/
// Use braces in Python!
def fib(n) {
a, b = 0, 1
while (a < n) {
print(a, end=' ')
a, b = b, a+b
}
print()
}
/*
Powerful anonymous functions
*/
print([def(x) {
if(x in [0, 1]) {
return x
};
while (x < 100) {
x = x ** 2
};
return x
}(x) for x in range(0, 10)])