แสดงหมายเลขบรรทัดใน IPython / Jupyter Notebook


139

รายงานข้อผิดพลาดจากเมล็ดภาษาส่วนใหญ่ที่ทำงานใน IPython / Jupyter Notebooks จะระบุบรรทัดที่เกิดข้อผิดพลาด แต่ (อย่างน้อยตามค่าเริ่มต้น) จะไม่มีการระบุหมายเลขบรรทัดในโน้ตบุ๊ก

เป็นไปได้ไหมที่จะเพิ่มหมายเลขบรรทัดไปยัง IPython / Jupyter Notebooks?


มันจะเป็นประโยชน์อย่างยิ่งในการเปลี่ยนพฤติกรรมเริ่มต้นของโน๊ตบุ๊ก ipython เพื่อให้มันแสดงหมายเลขบรรทัดตามค่าเริ่มต้น
gota

คำตอบ:


169

CTRL- MLสลับหมายเลขบรรทัดในพื้นที่ CodeMirror ดู QuickHelp สำหรับแป้นพิมพ์ลัดอื่น ๆ

ในรายละเอียดเพิ่มเติมCTRL- M(หรือESC) นำคุณเข้าสู่โหมดคำสั่งจากนั้นกดLปุ่มควรสลับการมองเห็นของหมายเลขบรรทัดปัจจุบัน ในรุ่นสมุดบันทึกล่าสุดShift-Lควรสลับสำหรับเซลล์ทั้งหมด

หากคุณจำทางลัดไม่ได้ให้เปิดพาเล็ตคำสั่งCtrl-Shift+P( Cmd+Shift+Pบน Mac) และค้นหา "หมายเลขบรรทัด") มันควรอนุญาตให้สลับและแสดงทางลัด


83
สำหรับ Ipython 3 (Jupyter) ในโหมดคำสั่ง (Esc) คุณเพียงแค่กด "L" เพื่อสลับหมายเลขบรรทัด
Julien Marrec

7
มีวิธีเพิ่มหมายเลขบรรทัดโดยอัตโนมัติไปยังเซลล์ทั้งหมดในดาวพฤหัสบดีหรือไม่
ChathuraG

1
ใช้Ctrl-m hเพื่อแสดงแป้นพิมพ์ลัดทั้งหมดในสมุดบันทึก ipython หรือคุณสามารถคลิกQuckHelpที่ด้านบนเพื่อแสดงทางลัด
nexayq

Ctrl-Shift+Pสำหรับผู้ชนะ
openwonk

81

บน IPython 2.2.0 เพียงพิมพ์ l (L ตัวพิมพ์เล็ก) ในโหมดคำสั่ง (เปิดใช้งานโดยการพิมพ์ Esc) ดู [วิธีใช้] - [แป้นพิมพ์ลัด] สำหรับทางลัดอื่น ๆ

นอกจากนี้คุณยังสามารถตั้งค่าการทำงานเริ่มต้นไปยังหมายเลขบรรทัดแสดงผลโดยการแก้ไขcustom.js


4
ฉันไม่เข้าใจว่าคำตอบนี้ไม่ได้รับการยอมรับอย่างไร (อาจโพสต์ช้าเกินไป) เพราะนี่เป็นคำตอบที่ถูกต้องหากคุณไม่ได้ใช้ CodeMirror แต่เป็นเพียง IPython Notebook แก้ไข: ในความเป็นจริง IPython Notebook ใช้ CodeMirror ดังนั้นคำตอบทั้งคู่จึงถูกต้อง เรียนรู้สิ่งใหม่วันนี้ขอบคุณ!
gaborous

ขอบคุณสิ่งนี้ใช้ได้กับโน้ตบุ๊ก jupyter ใน Chrome ดูเหมือนว่าจะง่ายที่สุด ...
user391339

38

เลือกตัวเลือกสลับ Line จำนวนจาก ->ViewToggle Line Number

เมนูมีลักษณะเช่นนี้


1
ฉันไม่อยากจะเชื่อเลยว่ามันเป็นเรื่องง่าย ไม่แน่ใจว่าทำไมจึงไม่เปิดโดยค่าเริ่มต้นเมื่อมีข้อผิดพลาดตามบรรทัด คงจะดีถ้าโน้ตบุ๊คเพิ่งไฮไลต์บรรทัดที่ให้ข้อผิดพลาด
Kaito

9

หากต้องการเปิดหมายเลขบรรทัดตามค่าเริ่มต้นในทุกเซลล์เมื่อเริ่มต้นฉันแนะนำลิงก์นี้ ฉันพูด:

  1. นำทางไปยังไดเร็กทอรี jupyter config ของคุณซึ่งคุณสามารถค้นหาได้โดยพิมพ์คำสั่งต่อไปนี้ที่บรรทัดรับคำสั่ง:

    jupyter --config-dir
  2. จากนั้นเปิดหรือสร้างcustomโฟลเดอร์

  3. ในโฟลเดอร์นั้นคุณควรหาcustom.jsไฟล์ หากไม่มีคุณควรสร้างได้ เปิดในโปรแกรมแก้ไขข้อความและเพิ่มรหัสนี้:

    define([
        'base/js/namespace',
        'base/js/events'
        ],
        function(IPython, events) {
            events.on("app_initialized.NotebookApp",
                function () {
                    IPython.Cell.options_default.cm_config.lineNumbers = true;
                }
            );
        }
    );

8

สำหรับฉันctrl + mใช้เพื่อบันทึกหน้าเว็บเป็น png ดังนั้นจึงไม่สามารถทำงานได้อย่างถูกต้อง แต่ฉันหาวิธีอื่น

บนแถบเครื่องมือมีด้านล่างชื่อเปิด paletee คำสั่งคุณสามารถคลิกและพิมพ์ในบรรทัดและคุณสามารถดูหมายเลขบรรทัดเซลล์สลับที่นี่


7

ต่อไปนี้เป็นวิธีรู้ทางลัดที่ใช้งาน (ขึ้นอยู่กับระบบปฏิบัติการและรุ่นโน้ตบุ๊กของคุณซึ่งอาจมีการเปลี่ยนแปลง)

Help > Keyboard Shortcuts > toggle line numbers

บน OSX ที่รัน ipython3 เหมือนเดิม ESC L


1

คุณยังสามารถค้นหาToggle Line Numbersภายใต้Viewแถบเครื่องมือด้านบนของสมุดบันทึก Jupyter ในเบราว์เซอร์ของคุณ สิ่งนี้จะเพิ่ม / ลบหมายเลขบรรทัดในเซลล์โน้ตบุ๊คทั้งหมด

สำหรับฉันEsc+ lเพิ่ม / ลบหมายเลขบรรทัดของเซลล์ที่ใช้งานอยู่เท่านั้น



-3

1. กด esc เพื่อเข้าสู่โหมดคำสั่ง 2.perss l (เป็น L ใน lowcase) เพื่อแสดงหมายเลขบรรทัด


สิ่งนี้ถูกโพสต์เมื่อ 3 ปีที่แล้วstackoverflow.com/a/26174059/3001626แล้วทำไมต้องโพสต์ใหม่ในหัวข้อเดียวกัน
David Arenburg
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.