ปิดใช้งานการยืนยันการออกจาก IPython


107

มันน่ารำคาญจริงๆที่ทุกครั้งที่พิมพ์exit()ฉันจะได้รับการแจ้งเตือนให้ออก แน่นอนฉันต้องการออก! ไม่งั้นคงไม่ได้เขียนexit()!!!

มีวิธีลบล้างพฤติกรรมเริ่มต้นของ IPython เพื่อให้ออกโดยไม่ต้องแจ้งหรือไม่?


2
หากคุณต้องการอัปเกรดเป็น IPython 0.11 exitไม่ต้องขอการยืนยัน (Ctrl-d ยังคงแจ้งในกรณีที่คุณกดโดยไม่ตั้งใจ)
Thomas K

คำตอบ:


126

หากคุณต้องการCtrl-Dออกโดยไม่ได้รับการยืนยันใน IPython 0.11 ให้เพิ่มc.TerminalInteractiveShell.confirm_exit = Falseไฟล์กำหนดค่าของคุณ *

หากคุณยังไม่มีไฟล์กำหนดค่าให้เรียกใช้ipython profile createเพื่อสร้างไฟล์

สังเกตตั๋วนี้หากคุณกำลังทำงานในเปลือก Django


* ไฟล์กำหนดค่าอยู่ที่: $HOME/.ipython/profile_default/ipython_config.py


41

ใน ipython เวอร์ชัน 0.11 หรือสูงกว่า

  1. รันด้วย--no-confirm-exitOR
  2. ออกทาง 'exit' แทน control-D OR
  3. ตรวจสอบให้แน่ใจว่ามีไดเร็กทอรีอยู่ (หรือเรียกใช้ipython profile createเพื่อสร้าง) และเพิ่มบรรทัดเหล่านี้ใน $ HOME / .ipython / profile_default / ipython_config.py:

    c = get_config()
    
    c.TerminalInteractiveShell.confirm_exit = False

~/.config/ipython/profile_default/ipython_config.pyเป็นที่ต้องการใน Linux เพื่อให้ตรงกับ freedesktop.org ทำงานบน 1.2.1
Ciro Santilli 郝海东冠状病六四事件法轮功

1
@CiroSantilli 烏坎事件 2016 六四事件法轮功กับ 3.2.1 มันไม่ใช่ - เวอร์ชั่นนี้พิมพ์usr/lib/python3.5/site-packages/IPython/utils/path.py:291: UserWarning: Ignoring ~/.config/ipython in favour of ~/.ipython.และในโค้ดWe have decided to go back to using .ipython everywhereด้วยซ้ำ เห็นได้ชัดว่าพวกเขาเปลี่ยนมันในเวอร์ชัน 1.x บางรุ่น
maxschlepzig

17

เพียงแค่พิมพ์กับทุนExitE

หรือเริ่มต้น IPython ด้วย:

$ ipython -noconfirm_exit

หรือสำหรับ IPython เวอร์ชันใหม่กว่า:

$ ipython --no-confirm-exit 

22
@Brendan ในการทำให้ถาวรคุณสามารถตั้งค่าในipythonrcโปรไฟล์ของคุณได้:confirm_exit 0
nye17

2
ดีตั้งด้วยนามแฝงและงานที่ทำ ไม่ต้องวุ่นวายกับการสร้างโปรไฟล์หรือเปลี่ยนการกำหนดค่า
Tom Busby

4

ฉันชอบคำแนะนำการกำหนดค่า แต่จนกระทั่งฉันได้เรียนรู้ฉันได้เริ่มใช้คีย์ผสม "ออก"

Ctrl+\

หรือ

Ctrl+4

แค่นี้ก็ฆ่าสิ่งที่กำลังทำงานอยู่ ไม่มีเวลาถามคำถามเกี่ยวกับการยืนยัน


8
นี่ไม่ใช่แนวทางปฏิบัติที่ดีทำให้ส่งเคอร์เนล SIGQUITไปยัง ipython ไม่เหลือโอกาสให้กระบวนการ ipython ล้างตัวเอง
georgexsh
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.