Autopep8的使用(python自动编排工具)
作者:WrYcF 发布时间:2022-07-04 11:10:47
什么是Autopep8
在python开发中, 大家都知道,python编码规范是PEP8,但是在市级开发中有的公司严格要求PEP8规范开发, 有的公司不会在乎那些,在我的理解中,程序员如果想走的更高,或者更远,干任何事情必须得专业化(本人理解方式), 不要求很多东西都是精通,但最少得有一门精通的语言,小弟在此在大佬面前装逼了, 忘看过的大牛不要揭穿, 留下你懂的我不懂的知识,大家一起学习,一起进步。 谢谢。
Autopep8是一个将python代码自动编排的一个工具,它使用pep8工具来决定代码中的那部分需要被排版,Autopep8可以修复大部分pep8工具中报告的排版问题。很多人都知道 Ctrl+Alt+L 也可以排版, 但是我要告诉你,快捷键只是可以简单的排版。跟Autopep8是无法相比的。
安装Autopep8:
pip install autopep8
安装完成之后,import导入一下,测试是否安装成功。
Aytopep8的使用
安装完成之后,打开pycharm,创建一个新的python文件, demo.py 将一下代码放入文件中。
def example1():
some_tuple = (1, 2, 3, 'a')
some_variable = {
'long': 'Long code lines should be wrapped within 79 characters.',
'other': [math.pi, 100, 200, 300, 9876543210,'This is a long string that goes on'],
'more': { 'inner': 'This whole logical line should be wrapped.',some_tuple: [ 1,20, 300, 40000,500000000,60000000000000000]}}
return (some_tuple, some_variable)
def example2(): return ('' in {'f': 2}) in {'has_key() is deprecated': True};
class Example3(object):
def __init__(self, bar):
# Comments should have a space after the hash.
if bar:
bar += 1
bar = bar * bar
else:
some_string = """
Indentation in multiline strings should not be touched.Only actual code should be reindented.
"""
这几行代码看上去是不是很乱, 接下来就要使用:Autopep8模块了
打开cmd找到demo.py的文件的上级目录,
然后输入以下命令:
autopep8 --in-place --aggressive --aggressive file.py
file.py 是你的demo.py
输入命令,按回车执行成功是不返回的, 执行完成之后就可以了,在次打开文件就可以看到变化了。
import math
import sys
def example1():
some_tuple = (1, 2, 3, 'a')
some_variable = {
'long': 'Long code lines should be wrapped within 79 characters.',
'other': [
math.pi,
100,
200,
300,
9876543210,
'This is a long string that goes on'],
'more': {
'inner': 'This whole logical line should be wrapped.',
some_tuple: [
1,
20,
300,
40000,
500000000,
60000000000000000]}}
return (some_tuple, some_variable)
def example2(): return ('' in {'f': 2}) in {'has_key() is deprecated': True};
class Example3(object):
def __init__(self, bar):
# Comments should have a space after the hash.
if bar:
bar += 1
bar = bar * bar
else:
some_string = """
Indentation in multiline strings should not be touched.Only actual code should be reindented.
"""
执行完Autopep8之后代码是不是看上去简洁多了。
有人会说,没写一个函数就执行一遍命令, 是不是有点麻烦啊, 是的, 有有点麻烦, 但是pycharm是可以配置的, 配置过程如下:
1: File ---> Settings ---> Tools ---> External Tools
打开之后,可以看见窗体左上角有一个 + 号, 点击+号添加。
Name: 名称可以随意
Program: autopep8 # 前提必须先安装
Arguments: --in-place --aggressive --aggressive $FilePath$
Working directory: $ProjectFileDir$
Advanced Options
---- Outputfilters:
$FILE_PATH$\:$LINE$\:$COLUMN$\:.*
以上配置完成之后点击 OK 保存即可。
快捷使用:
Tools ---> External Tools ---> Autopep8 鼠标点击一下即可。
来源:https://www.cnblogs.com/wuyongcong/p/9066531.html


猜你喜欢
- PHP 5.0.0 和PHP 4.0.38 于2004年7月13日同时发布,这是一个值得我们PHP爱好者的一大喜讯。期盼已久的PHP5终于出
- 做项目的时候,一位同事导数据的时候,不小心把一个表中的数据全都搞重了,也就是说,这个表里所有的记录都有一条重复的。这个表的数据是千万级的,而
- 在遥感应用中,我们经常需要对某一景遥感影像中的全部像元的像素值进行平均值求取——这一操作很好实现,基
- 网上考试设计思路是怎样的?为了运行这个应用程序,我们需要在global.asa文件里进行设置数据库的连接。global.asa <&n
- 在django1.9之前,数据库同步只需要一条命令:python manage.py syncdb在djang1.9以后,数据库同步执行指令
- 前言本文主要给大家介绍了利用django-suit模板在管理后台添加自定义的菜单和自定义的页面、设置访问权限的相关内容,分享出来供大家参考学
- 问题是:输入一个数字,按照指定要求逆序输出该数字,很简单,下面是实现:#!usr/bin/env python#encoding:utf-8
- 假设当我们只需知道某个数组有没有某个属性,如果找到了直接跳出循环,省略掉剩下的循环步骤是较优化的操作,但是for中是可以利用break跳出循
- 实际上前面我们就已经用到了图像的绘制,如:io.imshow(img) 这一行代码的实质是利用matplotlib包对图片进行绘
- 从物理意义上来讲,InnoDB表由共享表空间文件(ibdata1)、独占表空间文件(ibd)、表结构文件(.frm)、以及日志文件(redo
- 下面给大家介绍远程连接mysql错误代码1130的解决方法:以上所述是小编给大家介绍的远程连接mysql错误代码1130的解决方法网站的支持
- //采用对象冒充的方式实现js继承 function A(color) { this.Acolor = color; this.AshowC
- 代码如下:Create trigger tri_wk_CSVHead_History on wk_CSVHead_History --声明
- index()方法确定字符串str,如果起始索引beg和结束索引end在末尾给出了找到字符串或字符串的一个子串。这个方法与fin
- 前言因为写好了测试xmind脑图后,然后再编写测试用例,实在是太麻烦了,所以我写了一点测试用例后,就网上百度了下,怎么直接把xmind脑图转
- QSS介绍前言QSS即Qt样式表,是用来自定义控件外观的一种机制,QSS大量参考了Css的内容,但QSS的功能要比Css弱得多,体现在选择器
- 一个小问题今天在做一个实验时,需要对一个包含中英文词汇的TXT文件进行读入和整理。Python代码的编码规则为UTF-8。在读入时,文件的每
- 下面就是博主的一些思路和解决办法,如果对此没兴趣,想直接使用jquery插件的同学,可以点这里思路每一种颜色由RGB组成,每两位为一个16进
- 1. 根据字符串名称 动态调用 python文件内的方法eval("function_name")(参数)2. 根据字符
- append()方法追加传递obj到现有的列表。语法以下是append()方法的语法:list.append(obj)参数&nb