python Autopep8實現按PEP8風格自動排版Python代碼
Autopep8是一個將Python代碼自動排版為PEP8風格的小工具。它使用pep8工具來決定代碼中的哪部分需要被排版。Autopep8可以修復大部分pep8工具中報告的排版問題。
參考網址:
https://www.python.org/dev/peps/pep-0008/
https://pypi.python.org/pypi/autopep8/
(1)安裝步驟如下:
localhost:~ a6$ sudo pip install autopep8Password:The directory ’/Users/a6/Library/Caches/pip/http’ or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo’s -H flag.The directory ’/Users/a6/Library/Caches/pip’ or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo’s -H flag.Collecting autopep8Collecting pycodestyle>=2.3 (from autopep8) Downloading pycodestyle-2.3.1-py2.py3-none-any.whl (45kB) 100% |????????????????????????????????| 51kB 324kB/sInstalling collected packages: pycodestyle, autopep8Successfully installed autopep8-1.3.3 pycodestyle-2.3.1localhost:~ a6$ sudo pip install autopep8The directory ’/Users/a6/Library/Caches/pip/http’ or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo’s -H flag.The directory ’/Users/a6/Library/Caches/pip’ or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo’s -H flag.Requirement already satisfied: autopep8 in /Library/Python/2.7/site-packagesRequirement already satisfied: pycodestyle>=2.3 in /Library/Python/2.7/site-packages (from autopep8)
(2)示例代碼:
1)運行命令前代碼的排版 (保存在test_autopep8.py)
import math, sys; def example1(): ####This is a long comment. This should be wrapped to fit within 72 characters. 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 {’has_key() is deprecated’:True}.has_key({’f’:2}.has_key(’’));class Example3( object ): def __init__ ( self, bar ): #Comments should have a space after the hash. if bar : bar+=1; bar=bar* bar ; return bar else: some_string = ''' Indentation in multiline strings should not be touched.Only actual code should be reindented.''' return (sys.path, some_string)
2)運行命令
bogon:AB a6$ autopep8 --in-place --aggressive --aggressive test_autopep8.py
3)運行命令后代碼的排版
import mathimport sys def example1(): # This is a long comment. This should be wrapped to fit within 72 # characters. 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 return bar else: some_string = ''' Indentation in multiline strings should not be touched. Only actual code should be reindented. ''' return (sys.path, some_string)
4)參考網址:https://github.com/hhatto/autopep8
到此這篇關于python Autopep8實現按PEP8風格自動排版Python代碼的文章就介紹到這了,更多相關python Autopep8自動排版內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章:
1. java實現圖形化界面計算器2. IntelliJ Idea2017如何修改緩存文件的路徑3. IntelliJ IDEA設置條件斷點的方法步驟4. IIS Express 取代 ASP.NET Development Server的配置方法5. python flask框架快速入門6. Spring-Richclient 0.1.0 發布7. javascript設計模式 ? 建造者模式原理與應用實例分析8. 淺談SpringMVC jsp前臺獲取參數的方式 EL表達式9. Python使用oslo.vmware管理ESXI虛擬機的示例參考10. Express 框架中使用 EJS 模板引擎并結合 silly-datetime 庫進行日期格式化的實現方法
