diff --git a/pymbolic/algorithm.py b/pymbolic/algorithm.py index 027aea2636fb834b07818f26d5c286aa0ccac304..ac139630126b8e4273f9f5a1a616f93f4dd21ff7 100644 --- a/pymbolic/algorithm.py +++ b/pymbolic/algorithm.py @@ -370,10 +370,10 @@ def solve_affine_equations_for(unknowns, equations): if 0: for lhs, rhs in equations: - print(lhs, '=', rhs) + print(lhs, "=", rhs) print("-------------------") for lhs, rhs in six.iteritems(result): - print(lhs, '=', rhs) + print(lhs, "=", rhs) return result diff --git a/pymbolic/geometric_algebra/mapper.py b/pymbolic/geometric_algebra/mapper.py index 5ee93265d9f42a96981740d66b2faae9409c003b..f35a2f5e739527dd9a28b053d470e4d71e1eda8f 100644 --- a/pymbolic/geometric_algebra/mapper.py +++ b/pymbolic/geometric_algebra/mapper.py @@ -127,7 +127,7 @@ class StringifyMapper(StringifyMapperBase): class GraphvizMapper(GraphvizMapperBase): def map_derivative_source(self, expr): self.lines.append( - "%s [label=\"D[%s]\",shape=ellipse];" % ( + '%s [label="D[%s]\",shape=ellipse];' % ( self.get_id(expr), expr.nabla_id)) if not self.visit(expr, node_printed=True): return diff --git a/pymbolic/imperative/statement.py b/pymbolic/imperative/statement.py index 0c63b201591e86db6b13e55da2735b67fbc7530e..5b06e62e73b90fe9972f252d84d29f7fee2cebb8 100644 --- a/pymbolic/imperative/statement.py +++ b/pymbolic/imperative/statement.py @@ -189,7 +189,7 @@ class ConditionalAssignment(ConditionalStatement, Assignment): class Nop(Statement): def __str__(self): - return 'nop' + return "nop" # }}} diff --git a/pymbolic/imperative/utils.py b/pymbolic/imperative/utils.py index 16e538e57861245160d153f4aecba1e9a7bd7d66..633f0107aa32c6f6c78e1cd0ebf9e69cc522c6cd 100644 --- a/pymbolic/imperative/utils.py +++ b/pymbolic/imperative/utils.py @@ -36,15 +36,15 @@ logger = logging.getLogger(__name__) def _default_preamble_hook(): # Sets default attributes for nodes and edges. - yield "node [shape=\"box\"];" - yield "edge [dir=\"back\"];" + yield 'node [shape="box"];' + yield 'edge [dir="back"];' def get_dot_dependency_graph( statements, use_stmt_ids=None, preamble_hook=_default_preamble_hook, additional_lines_hook=list, - statement_stringifier=lambda s: str(s).replace("\"", "\\\""), + statement_stringifier=lambda s: str(s).replace('"', r'\"'), # deprecated use_insn_ids=None,): @@ -80,7 +80,7 @@ def get_dot_dependency_graph( stmt_label = statement_stringifier(stmt) tooltip = stmt.id - return "label=\"%s\",shape=\"box\",tooltip=\"%s\"" % (stmt_label, tooltip) + return 'label="%s",shape="box",tooltip="%s"' % (stmt_label, tooltip) lines = list(preamble_hook()) lines.append("rankdir=BT;") @@ -90,7 +90,7 @@ def get_dot_dependency_graph( annotation_dep_graph = {} for stmt in statements: - lines.append("\"%s\" [%s];" % (stmt.id, get_node_attrs(stmt))) + lines.append('"%s" [%s];' % (stmt.id, get_node_attrs(stmt))) for dep in stmt.depends_on: dep_graph.setdefault(stmt.id, set()).add(dep) @@ -130,7 +130,7 @@ def get_dot_dependency_graph( for (stmt_1, stmt_2), annot in six.iteritems(annotation_dep_graph): lines.append( - "%s -> %s [label=\"%s\",style=\"dashed\"]" + '%s -> %s [label="%s",style="dashed"]' % (stmt_2, stmt_1, annot)) lines.extend(additional_lines_hook()) diff --git a/pymbolic/interop/maxima.py b/pymbolic/interop/maxima.py index cfe3397593ed569a5a846dbe9ef3f31afbb40631..8d45e539e3dd63c5b7b99d1c9360d4d7c8c3e3a3 100644 --- a/pymbolic/interop/maxima.py +++ b/pymbolic/interop/maxima.py @@ -295,12 +295,12 @@ class MaximaKernel: # {{{ check for maxima command self.child.sendline( - "hash \"{command}\"; echo $?".format(command=self.executable)) + 'hash \"{command}\"; echo $?'.format(command=self.executable)) hash_output = self.child.expect(["0\r\n", "1\r\n"]) if hash_output != 0: raise RuntimeError( - "maxima executable \"{command}\" not found" + "maxima executable '{command}' not found" .format(command=self.executable)) # }}} diff --git a/pymbolic/mapper/graphviz.py b/pymbolic/mapper/graphviz.py index f4746269b401f02ad82fd8e818c55faf78facd3c..14b0d42fb3e90a8556358676d2d84530325f92f2 100644 --- a/pymbolic/mapper/graphviz.py +++ b/pymbolic/mapper/graphviz.py @@ -49,13 +49,13 @@ class GraphvizMapper(WalkMapper): "\n".join(" "+line for line in self.lines)) def get_id(self, expr): - "Generate a unique node ID for dot for *expr*" + """Generate a unique node ID for dot for *expr*""" return "id%d" % id(expr) def map_leaf(self, expr): self.lines.append( - "%s [label=\"%s\", shape=box];" % ( + '%s [label="%s", shape=box];' % ( self.get_id(expr), str(expr).replace("\\", "\\\\"))) if self.visit(expr, node_printed=True): @@ -84,7 +84,7 @@ class GraphvizMapper(WalkMapper): if not node_printed: self.lines.append( - "%s [label=\"%s\"];" % ( + '%s [label="%s"];' % ( self.get_id(expr), type(expr).__name__)) @@ -96,7 +96,7 @@ class GraphvizMapper(WalkMapper): def map_sum(self, expr): self.lines.append( - "%s [label=\"+\",shape=circle];" % (self.get_id(expr))) + '%s [label="+",shape=circle];' % (self.get_id(expr))) if not self.visit(expr, node_printed=True): return @@ -107,7 +107,7 @@ class GraphvizMapper(WalkMapper): def map_product(self, expr): self.lines.append( - "%s [label=\"*\",shape=circle];" % (self.get_id(expr))) + '%s [label="*",shape=circle];' % (self.get_id(expr))) if not self.visit(expr, node_printed=True): return @@ -123,7 +123,7 @@ class GraphvizMapper(WalkMapper): node_id = self.generate_unique_id() self.lines.append( - "%s [label=\"%s\",shape=box];" % ( + '%s [label="%s",shape=box];' % ( node_id, expr.name)) if not self.visit(expr, node_printed=True, node_id=node_id): @@ -133,7 +133,7 @@ class GraphvizMapper(WalkMapper): def map_lookup(self, expr): self.lines.append( - "%s [label=\"Lookup[%s]\",shape=box];" % ( + '%s [label="Lookup[%s]",shape=box];' % ( self.get_id(expr), expr.name)) if not self.visit(expr, node_printed=True): return @@ -149,7 +149,7 @@ class GraphvizMapper(WalkMapper): node_id = self.generate_unique_id() self.lines.append( - "%s [label=\"%s\",shape=ellipse];" % ( + '%s [label="%s",shape=ellipse];' % ( node_id, str(expr))) if not self.visit(expr, node_printed=True, node_id=node_id): @@ -163,7 +163,7 @@ class GraphvizMapper(WalkMapper): return super(GraphvizMapper, self).map_call(expr) self.lines.append( - "%s [label=\"Call[%s]\",shape=box];" % ( + '%s [label="Call[%s]",shape=box];' % ( self.get_id(expr), str(expr.function))) if not self.visit(expr, node_printed=True): return diff --git a/setup.cfg b/setup.cfg index 4a1dc55840ed72d40c71ff6133228992f901c73e..2089bdfcb78f4d1e7ff5ac3b9456fda4719670bc 100644 --- a/setup.cfg +++ b/setup.cfg @@ -2,3 +2,7 @@ ignore = E126,E127,E128,E123,E226,E241,E242,W503,E402 max-line-length=85 exclude=doc,pymbolic/polynomial.py + +inline-quotes = " +docstring-quotes = """ +multiline-quotes = """ diff --git a/test/test_pymbolic.py b/test/test_pymbolic.py index e199c763ba47de2b88b2e13c070a443c5417191f..52d40e44d310a4351c8e99350a2f52544233f5e3 100644 --- a/test/test_pymbolic.py +++ b/test/test_pymbolic.py @@ -40,7 +40,7 @@ except NameError: def assert_parsed_same_as_python(expr_str): # makes sure that has only one line - expr_str, = expr_str.split('\n') + expr_str, = expr_str.split("\n") from pymbolic.interop.ast import ASTToPymbolic import ast ast2p = ASTToPymbolic() @@ -284,13 +284,13 @@ def test_parser(): assert parse("f(x,(y,z),z, name=15, name2=17)") == f( x, (y, z), z, name=15, name2=17) - assert_parsed_same_as_python('5+i if i>=0 else (0 if i<-1 else 10)') + assert_parsed_same_as_python("5+i if i>=0 else (0 if i<-1 else 10)") assert_parsed_same_as_python("0 if 1 if 2 else 3 else 4") assert_parsed_same_as_python("0 if (1 if 2 else 3) else 4") assert_parsed_same_as_python("(2, 3,)") with pytest.deprecated_call(): - parse('1+if(0, 1, 2)') + parse("1+if(0, 1, 2)") # }}} @@ -313,8 +313,8 @@ def test_mappers(): def test_func_dep_consistency(): from pymbolic import var from pymbolic.mapper.dependency import DependencyMapper - f = var('f') - x = var('x') + f = var("f") + x = var("x") dep_map = DependencyMapper(include_calls="descend_args") assert dep_map(f(x)) == set([x]) assert dep_map(f(x=x)) == set([x]) @@ -322,8 +322,8 @@ def test_func_dep_consistency(): def test_conditions(): from pymbolic import var - x = var('x') - y = var('y') + x = var("x") + y = var("y") assert str(x.eq(y).and_(x.le(5))) == "x == y and x <= 5" @@ -644,7 +644,7 @@ def test_differentiator_flags_for_nonsmooth_and_discontinuous(): import pymbolic.functions as pf from pymbolic.mapper.differentiator import differentiate - x = prim.Variable('x') + x = prim.Variable("x") with pytest.raises(ValueError): differentiate(pf.fabs(x), x)