首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python ()-function的格式化问题-为什么格式化(autopep8)将我的print语句推到‘print(’)后面?

Python ()-function的格式化问题-为什么格式化(autopep8)将我的print语句推到‘print(’)后面?
EN

Stack Overflow用户
提问于 2022-10-13 09:59:26
回答 2查看 20关注 0票数 -1

我注意到,当我在VSC中用autopep8格式化它时,我最后一个print()autopep8语句的部分内容被按下了,我不明白为什么。只有当字符串中有临时foor循环变量{guesses_Taken}时,才会发生这种情况。

代码语言:javascript
复制
if guess == secret_number:
    print(
        f'Good job, {name}! You guessed my number in {guesses_taken} guesses taken')

如果没有变量,它就会像往常一样格式化:

代码语言:javascript
复制
print(f'Good job, {name}! You guessed my number in  guesses taken')

我试着打印一个临时的。对于另一个文件中的循环变量来重现问题,但是在这里它工作正常。

代码语言:javascript
复制
numbers = 23
for i in range(3):
    x = i
if x == 2:
    print(f'Number {i} and Number {numbers}')

最后一行存在格式问题的原始代码

代码语言:javascript
复制
for guesses_taken in range(1, 7):
    print('Take a guess.')
    guess = int(input())
    if guess < secret_number:
        print('Your guess is too low.')
    elif guess > secret_number:
        print('Your guess is too high')
    else:
        break  # This condition is for the correct guess
if guess == secret_number:
    print(
        f'Good job, {name}! You guessed my number in {guesses_taken} guesses taken')

它是一个bug还是我可以改进什么?程序本身运行正常。

提前谢谢你!

完整源代码第21行:https://pastebin.com/D66mDm5K VSC版本: 1.72.1

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-10-13 10:03:20

对字符串的添加将行的长度推到PEP8 8建议的80个字符之上:

代码语言:javascript
复制
print(len("print(f'Good job, {name}! You guessed my number in  guesses taken')"))
print(len("print(f'Good job, {name}! You guessed my number in {guesses_taken} guesses taken')"))

输出

代码语言:javascript
复制
67
82

autopep8的解决方案是在print(之后打破界限。

您可以使用--max-line-length [length] CLI参数来配置不同的值。

票数 0
EN

Stack Overflow用户

发布于 2022-10-13 10:04:17

PEP8指定行长度必须最大为79,因此编辑器正在重构您的代码,以尝试遵守该规则。

在这里使代码看起来更干净的一种方法是:

代码语言:javascript
复制
if guess == secret_number:
    print(
        f"Good job, {name}! You guessed my number in " 
        f"{guesses_taken} guesses taken"
    )

例如

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74053847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档