Nattawut Phetmak
Jack of all Trades
การรับ input ทาง keyboard (stdio) ทำผ่านฟังก์ชัน input()
raw = input('please enter a number: ')
# this will print: please enter a number: _
# and wait for the input (at the blink _ char)
# after key a number, press enter to continue
print(int(raw)**2)
# raw input will always be string
# don't forget to parse it before use it
# this will print your number**2
ง่ายๆ แค่นี้แหละครับ (สั้นจนเหลือเชื่อเนาะ?)
ส่วนการอ่านไฟล์ของ Python นั้น จะใช้ open()
สร้าง file object ขึ้นมาก่อน
f = open('memo.txt')
# mode: read only
g = open('transc.txt', 'a')
# mode: append
h = open('diary1111.txt', 'w')
# mode: erase old and write new
i = open('pic.bmp', 'rb')
# open file in binary mode for read only
เมื่อเปิดไฟล์สำเร็จ ก็ต้องอ่านมัน
# example file memo.txt:
# hello!
# this is hal.
# how are you?
f = open('memo.txt', 'r')
f.read()
# return all char in file
# in this case: 'hello!\nthis is hal.\nhow are you?'
f.seek(0)
# go to the 0th char (begin) of file
f.read(7)
# read 7 char: 'hello!\n'
f.readline()
# read a line: 'this is hal.\n'
f.seek(0)
for line in f:
print(line, end='')
# print all char in file, convert \n to newline
f.close()
ส่วนการเขียนไฟล์ก็ทำได้ง่ายๆ เช่นนี้ครับ
f = open('answer.txt', 'w')
f.write('deep thought says: 42')
f.close()
# don't forget to close file after use it!
หมายเหตุ ชาว Windows ไม่ต้องกังวลเรื่อง \n นะครับ Python จะจัดการมันให้เป็น \r\n โดยอัตโนมัติ
นอกจากนี้ เรายังสามารถใช้ with
ในการเปิดไฟล์มาใช้แบบเร็วๆ ได้อีกด้วย
with open('memo.txt') as f:
for line in f:
print(line, end='')
# print every line in file memo.txt
ซึ่งมีข้อดีในกรณีที่ทราบ scope การอ่านไฟล์ที่แน่นอนครับ และยังไม่ต้องสั่ง close()
อีกด้วย