2017-07-28 3 views
2

zählt Ich benutze gerade Jupyter ipython Notizbuch und die Akte, mit der ich arbeite, hat viel Code. Ich bin nur neugierig, wie viele Codezeilen es genau in meiner Datei gibt. Es ist schwer zu zählen, da ich meinen Code in viele verschiedene Blöcke aufgeteilt habe.Wie man Linien des Codes in jupyter Notizbuch

Für jeden, der mit jupyter Notizbuch erfahren hat, wie zählen Sie, wieviele Gesamtlinien des Codes dort in der Akte sind?

Danke!

Edit: Ich habe herausgefunden, wie das geht, obwohl auf eine ziemlich obskure Art und Weise. Gehen Sie folgendermaßen vor: Laden Sie das Jupyter-Notizbuch als .py-Datei herunter und öffnen Sie dann die .py-Datei in Software wie Xcode oder der von Ihnen verwendeten IDE und zählen Sie die Codezeilen dort.

+0

Sie können angeben, ob Leerzeilen oder Kommentare in der Summe relevant sind, und auch, was Sie versucht haben – PRMoureu

+0

Sie können die Zeilennummern im Jupyter Notebook mit STRG + ML anzeigen: https://stackoverflow.com/questions/ 10979667/showing-line-numbers-in-ipython-jupyter-notebooks –

+0

Ja, ich habe die Zeilennummern angezeigt, aber ich möchte die Gesamtzahl der Zeilen in meiner Datei (einschließlich Kommentare und Leerzeilen) zählen. – Cynthia

Antwort

4

Dies wird Ihnen die Gesamtzahl der LOC geben in einem oder mehreren Notebooks, die Sie über die Befehlszeile an das Skript übergeben:

#!/usr/bin/env python 

from json import load 
from sys import argv 

def loc(nb): 
    cells = load(open(nb))['cells'] 
    return sum(len(c['source']) for c in cells if c['cell_type'] == 'code') 

def run(ipynb_files): 
    return sum(loc(nb) for nb in ipynb_files) 

if __name__ == '__main__': 
    print(run(argv[1:])) 

so etwas wie $ ./loc.py nb1.ipynb nb2.ipynb So tun Sie könnten Ergebnisse zu erhalten.

Verwandte Themen