[Python-ideas] Implicit string literal concatenation considered harmful?
M.-A. Lemburg
mal at egenix.com
Sat May 11 19:24:02 CEST 2013
On 11.05.2013 19:05, Christian Tismer wrote:
> I think a simple stripping of white-space in
>
> text = s"""
> leftmost column
> two-char indent
> """
>
> would solve 95 % of common indentation and concatenation cases.
> I don't think provision for merging is needed very often.
> If text occurs deeply nested in code, then it is also quite likely to
> be part of an expression, anyway.
> My major use-case is text constants in a class or function that
> is multiple lines long and should be statically ready to use without
> calling a function.
>
> (here an 's' as a strip prefix, but I'm not sold on that)
This is not a good solution for long lines where you don't want to
have embedded line endings. Taken from existing code:
_litmonth = ('(?P<litmonth>'
'jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec|'
'mär|mae|mrz|mai|okt|dez|'
'fev|avr|juin|juil|aou|aoû|déc|'
'ene|abr|ago|dic|'
'out'
')[a-z,\.;]*')
or
raise errors.DataError(
'Inconsistent revenue item currency: '
'transaction=%r; transaction_position=%r' %
(transaction, transaction_position))
We usually try to keep the code line length under 80 chars,
so splitting literals in that way is rather common, esp. in
nested code paths.
--
Marc-Andre Lemburg
eGenix.com
Professional Python Services directly from the Source (#1, May 11 2013)
>>> Python Projects, Consulting and Support ... http://www.egenix.com/
>>> mxODBC.Zope/Plone.Database.Adapter ... http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/
________________________________________________________________________
2013-05-07: Released mxODBC Zope DA 2.1.2 ... http://egenix.com/go46
2013-05-06: Released mxODBC 3.2.3 ... http://egenix.com/go45
::::: Try our mxODBC.Connect Python Database Interface for free ! ::::::
eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48
D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
Registered at Amtsgericht Duesseldorf: HRB 46611
http://www.egenix.com/company/contact/
More information about the Python-ideas
mailing list