summaryrefslogtreecommitdiff
path: root/pygments/lexers/python.py
diff options
context:
space:
mode:
authorKevin Stone <kevinastone@gmail.com>2017-05-02 10:03:14 -0700
committerKevin Stone <kevinastone@gmail.com>2017-05-02 10:03:14 -0700
commitb28b24c5ffe0274a2ac45398766213e83bf6b2d7 (patch)
tree0a9fb7539a8d7f0eed8e79c8debd471bf1e07872 /pygments/lexers/python.py
parent0db8e281af377923115b894703b2b8beb8f1e9d5 (diff)
downloadpygments-b28b24c5ffe0274a2ac45398766213e83bf6b2d7.tar.gz
Added pep 515 support to the python lexer
Fixes #1299
Diffstat (limited to 'pygments/lexers/python.py')
-rw-r--r--pygments/lexers/python.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/pygments/lexers/python.py b/pygments/lexers/python.py
index 390eafe8..c9f024e1 100644
--- a/pygments/lexers/python.py
+++ b/pygments/lexers/python.py
@@ -395,6 +395,15 @@ class Python3Lexer(RegexLexer):
]
tokens['strings-single'] = innerstring_rules(String.Single)
tokens['strings-double'] = innerstring_rules(String.Double)
+ tokens['numbers'] = [
+ (r'(\d(?:_?\d)*\.(?:\d(?:_?\d)*)?|(?:\d(?:_?\d)*)?\.\d(?:_?\d)*)([eE][+-]?\d(?:_?\d)*)?', Number.Float),
+ (r'\d+[eE][+-]?[0-9]+j?', Number.Float),
+ (r'0[oO](?:_?[0-7])+', Number.Oct),
+ (r'0[bB](?:_?[01])+', Number.Bin),
+ (r'0[xX](?:_?[a-fA-F0-9])+', Number.Hex),
+ (r'\d(?:_?\d)*', Number.Integer)
+ ]
+
def analyse_text(text):
return shebang_matches(text, r'pythonw?3(\.\d)?')