ฉันกำลังประสบปัญหาขณะดำเนินการ :!python3 %
ในกลุ่ม
:!python3 test_glove.py
Traceback (การโทรครั้งล่าสุดล่าสุด):
ไฟล์ "test_glove.py" บรรทัดที่ 13 ใน <โมดูล>
สำหรับบรรทัดใน f.readlines():
ไฟล์ "/usr/lib/python3.6/encodings/ascii.py", บรรทัดที่ 26 ในการถอดรหัส
ส่งคืน codecs.ascii_decode (อินพุต, self.errors)[0]
UnicodeDecodeError: ตัวแปลงสัญญาณ 'ascii' ไม่สามารถถอดรหัสไบต์ 0xe2 ในตำแหน่ง 1387: ลำดับที่ไม่อยู่ในช่วง (128)
วิธีแก้ปัญหาง่ายๆ คือบอกตัวจัดการไฟล์โดยตรงว่าไฟล์ใดเข้ารหัสไฟล์ที่กำลังอ่านอยู่ ด้วย open(GLOVE_FILENAME, "r+", encoding="utf-8") เป็น f:
.
แต่ถ้าคอมไพเลอร์ python3 ไม่จำเป็นต้องทำเช่นนั้น ทำไม vim ถึงต้องการให้ฉันทำ ทำไมวีมไม่ได้ !python3
ทำงานเหมือนกับที่ python3 ทำหรือไม่
สิ่งนี้บังคับให้ฉันกำหนดการเข้ารหัสของทุกไฟล์ที่ฉันกำลังอ่าน/เขียน หรือบันทึกและออกจาก vim เพื่อคอมไพล์และเรียกใช้ด้วย python บนพรอมต์ UNIX ซึ่งไม่มีปัญหา
มีวิธีแก้ไขสำหรับสิ่งนั้นหรือไม่? ของฉัน ~/.vimrc
การเข้ารหัสถูกตั้งค่าเป็น utf-8 แล้ว
ตั้งค่าการเข้ารหัสไฟล์=ucs-bom,utf-8,latin1
ตั้งค่าการเข้ารหัส = utf-8
ใครช่วยอธิบายให้ฉันฟังหน่อยได้ไหมว่าทำอะไรได้บ้าง