วางหลายบรรทัด (อ่านเป็นบรรทัดเดียว / อินพุต) ลงในคอนโซล Spyder
ดังนั้นสมมติว่าฉันต้องรับ 3 อินพุตจากผู้ใช้ (ชื่ออายุสถานที่):
Jim Halpert
30
Scranton
และฉันเขียนโค้ดดังนี้:
name = input()
age = input()
location = input()
ตอนนี้แทนที่จะพิมพ์ทีละรายการฉันแค่คัดลอกและวางจากไฟล์ข้อความ แต่เมื่อฉันวางลงในคอนโซลจะไม่ถูกอ่านเป็นอินพุตแยกต่างหาก ในความเป็นจริงมีดังต่อไปนี้:
Jim Halpert
...: 30
...: Scranton
คำถามของฉันคือมีวิธีใดบ้างที่ฉันสามารถทำให้ Spyder อ่านเป็นอินพุตแยกกันได้? ขอขอบคุณสำหรับความช่วยเหลือของคุณ.
คำตอบ
2 RichardD
คุณสามารถใช้ .splitlines ()
name, age, location = input().splitlines()
print(name)
print(age)
print(location)
ตัวแปรทั้งสามจะถูกจัดเก็บเป็นสตริงในกรณีนี้ หากคุณทำคณิตศาสตร์ตามอายุคุณจะต้องแปลง
age = int(age)
หากอินพุตทั้งหมดเป็น ints ตัวอย่างเช่นคุณสามารถทำได้
x, y, z = [int(x) for x in input().splitlines()]