Python Forum
Is ::= a typo or actually an operator?
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Is ::= a typo or actually an operator?
#1
I am running python 3.4, and trying to learn how to use the keyword assert. It's featured on the Pythong docs page https://docs.python.org/3/reference/simp...-statement, section 7.3.

This line is giving me a syntax error:
assert_stmt ::= "assert" expression1 ["," expression2]

Is ::= an operator or a typo? The compiler highlights the first colon when I run it.
Reply
#2
It's a metasyntax notation called extended Backus-Naur form (EBNF).
The BNF uses the symbols (<, >, |, ::=) for itself, but does not include quotes around terminal strings. This prevents these characters from being used in the languages, and requires a special symbol for the empty string. In EBNF, terminals are strictly enclosed within quotation marks ("..." or '...'). The angle brackets ("<...>") for nonterminals can be omitted.
see: https://www.w3.org/TR/hdml20-6.html#HEADING6-3
Reply


Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020