相关疑难解决方法(0)

JSON中的多行字符串

我正在用JSON格式编写一些数据文件,并希望将一些非常长的字符串值分成多行.使用python的JSON模块我得到了很多错误,无论是使用\还是\n作为转义.

是否可以在JSON中使用多行字符串?这主要是为了视觉上的舒适,所以我想我可以在我的编辑器中翻开自动换行,但我只是有点好奇......

string syntax json multiline

584
推荐指数
11
解决办法
56万
查看次数

是否有可能在Python中将长行分成多行

就像C一样,你可以将一条长线分成多条短线.但是在Python中,如果我这样做,会出现缩进错误......是否可能?

python

526
推荐指数
7
解决办法
81万
查看次数

用Python包裹长行

如何在不牺牲缩进的情况下在Python中包装长行?

例如:

def fun():
    print '{0} Here is a really long sentence with {1}'.format(3, 5)
Run Code Online (Sandbox Code Playgroud)

假设这超过了79个字符的建议限制.我读它的方式,这里是如何缩进它:

def fun():
    print '{0} Here is a really long \
sentence with {1}'.format(3, 5)
Run Code Online (Sandbox Code Playgroud)

但是,使用这种方法,连续行的缩进与缩进相匹配fun().这看起来有点难看.如果有人要查看我的代码,那么由于这个print陈述而导致缩进不均匀会很糟糕.

如何在不牺牲代码可读性的情况下有效地缩进这样的行?

python string

192
推荐指数
6
解决办法
22万
查看次数

如何编写符合PEP8的非常长的字符串并阻止E501

由于PEP8建议保持低于你的python程序的80列规则,我怎么能遵守长字符串,即

s = "this is my really, really, really, really, really, really, really long string that I'd like to shorten."
Run Code Online (Sandbox Code Playgroud)

我将如何将其扩展到以下行,即

s = "this is my really, really, really, really, really, really" + 
    "really long string that I'd like to shorten."
Run Code Online (Sandbox Code Playgroud)

python string pep8

182
推荐指数
5
解决办法
6万
查看次数

我如何在Python中打破这条长线?

你会如何格式化这样的长行?我希望它的宽度不超过80个字符:

logger.info("Skipping {0} because its thumbnail was already in our system as {1}.".format(line[indexes['url']], video.title))
Run Code Online (Sandbox Code Playgroud)

这是我最好的选择吗?

url = "Skipping {0} because its thumbnail was already in our system as {1}."
logger.info(url.format(line[indexes['url']], video.title))
Run Code Online (Sandbox Code Playgroud)

python formatting code-formatting

160
推荐指数
4
解决办法
20万
查看次数

如何在Python中打破一系列链式方法?

我有一行以下代码(不要责怪命名约定,它们不是我的):

subkeyword = Session.query(
    Subkeyword.subkeyword_id, Subkeyword.subkeyword_word
).filter_by(
    subkeyword_company_id=self.e_company_id
).filter_by(
    subkeyword_word=subkeyword_word
).filter_by(
    subkeyword_active=True
).one()
Run Code Online (Sandbox Code Playgroud)

我不喜欢它的样子(不要太可读),但我没有任何更好的主意来限制这种情况下,行79个字符.是否有更好的方法来打破它(最好没有反斜杠)?

python coding-style pep8

126
推荐指数
5
解决办法
3万
查看次数

python断言有和没有括号

这里有四个简单的assert调用:

>>> assert 1==2
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
AssertionError

>>> assert 1==2, "hi"
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
AssertionError: hi

>>> assert(1==2)
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
AssertionError

>>> assert(1==2, "hi")
Run Code Online (Sandbox Code Playgroud)

请注意,最后一个不会引发错误.调用带或不带括号的断言会导致这种行为有什么区别?我的做法是使用括号,但上面的建议我不应该这样做.

python assert parentheses

91
推荐指数
4
解决办法
3万
查看次数

JavaScript和Python中的分号有什么区别?

Python和JavaScript都允许开发人员使用或省略分号.但是,我经常看到它建议(在书籍和博客中)我不应该在Python中使用分号,而我应该总是在JavaScript中使用它们.

语言如何使用分号或者这只是文化差异是否存在技术差异?

javascript python syntax

57
推荐指数
6
解决办法
6455
查看次数

在多行中连接python中的字符串

我有一些字符串要连接,结果字符串将很长.我也有一些变量要连接.

如何组合字符串和变量,以便结果是多行字符串?

以下代码抛出错误.

str = "This is a line" +
       str1 +
       "This is line 2" +
       str2 +
       "This is line 3" ;
Run Code Online (Sandbox Code Playgroud)

我也尝试过这个

str = "This is a line" \
      str1 \
      "This is line 2" \
      str2 \
      "This is line 3" ;
Run Code Online (Sandbox Code Playgroud)

请建议一种方法来做到这一点.

python string concatenation

35
推荐指数
3
解决办法
3万
查看次数

如何在Python三元运算符上换行?

有时,Python中包含三元运算符的行会变得太长:

answer = 'Ten for that? You must be mad!' if does_not_haggle(brian) else "It's worth ten if it's worth a shekel."
Run Code Online (Sandbox Code Playgroud)

是否有推荐的方法使用三元运算符将换行符设置为79个字符?我没有在PEP 8中找到它.

python line-breaks

33
推荐指数
3
解决办法
1万
查看次数