VSCode ไม่สามารถอ่านอินพุตของผู้ใช้ในขณะที่ดีบักโค้ด python ใน integratedTerminal

Aug 16 2020

ในรหัสหลามสองบรรทัดนี้:

string = input("What's your name? ")

if string != '': print('Hello, ' + string + '!')

ในขณะที่ฉันเรียกใช้การดีบักมันจะรอให้ผู้ใช้ป้อนข้อมูล หลังจากพิมพ์ชื่อ Terminal (Python Debug Console) ก็หยุดที่นั่นบรรทัด print () จะไม่ถูกดำเนินการ ดูภาพหน้าจอด้านล่าง

ไฟล์ launch.json อยู่ด้านล่าง (เป็นค่าเริ่มต้น):

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        }
    ]
}

หากฉันเรียกใช้รหัสนี้โดยไม่ต้องแก้ไขข้อบกพร่องทุกอย่างก็โอเค

หมายเหตุ: ดีบักเกอร์ทำงานได้ดีมาก่อน ปัญหานี้เพิ่งเกิดขึ้นเมื่อไม่นานมานี้ ขอบคุณความช่วยเหลือหรือคำแนะนำเป็นอย่างมาก

คำตอบ

1 eggheadlabs Aug 17 2020 at 20:24

หลังจากที่ฉันย้อนกลับส่วนขยาย python เป็นเวอร์ชันก่อนหน้า (v2020.7.96456) ปัญหาจะหมดไปและดีบักเกอร์สามารถเลื่อนไปยังบรรทัดถัดไปของโค้ดแล้วทำงานได้อย่างถูกต้อง

แม้ว่าฉันจะไม่สามารถพิสูจน์ได้อย่างยากลำบากว่าเหตุใดเวอร์ชันล่าสุด (v2020.8.101144) จึงทำให้ดีบักเกอร์หยุดรับข้อมูลของผู้ใช้อย่างน้อยการย้อนกลับไปยังเวอร์ชันก่อนหน้าอาจเป็นการแก้ไขชั่วคราวจนกว่าการแก้ไขในอนาคตจะแก้ไขปัญหานี้ได้