การใช้ Python ทำให้เราสามารถแปลงข้อมูลเป็นประเภทต่างๆ ได้อย่างง่ายดาย มีฟังก์ชันต่างๆ สำหรับการแปลงประเภท เราสามารถแปลงอ็อบเจ็กต์ประเภทสตริงเป็นค่าตัวเลข แปลงระหว่างคอนเทนเนอร์ประเภทต่างๆ เป็นต้น
ในส่วนนี้เราจะมาดูกันว่าการแปลงไฟล์สามารถทำได้โดยใช้ Python อย่างไร
การแปลงสตริงเป็นประเภทตัวเลข
ในการแปลงจากวัตถุประเภท String เป็น Numeric Objects มีวิธีการต่างๆ เช่น int(), float() เป็นต้น การใช้เมธอด int() เราสามารถแปลงตัวเลขใดๆ เป็นสตริงเป็นค่าจำนวนเต็ม (ฐาน 10) ใช้อาร์กิวเมนต์ประเภทสตริง ฐานเริ่มต้นคือ 10 นอกจากนี้เรายังสามารถระบุฐานที่จะแปลงจากสตริงของฐานนั้นเป็นตัวเลขทศนิยมได้
ในทำนองเดียวกันการใช้เมธอด float() หนึ่งสตริงที่มีค่าในรูปแบบทศนิยมสามารถแปลงเป็นทศนิยมได้
โค้ดตัวอย่าง
str_number ='56'print(int(str_number)) #default base is 10print(int(str_number, 16)) #From Hexadecimalprint(int(str_number, 12)) #จากตัวเลขที่ฐานเป็น 12str_number ='25.897 'print(float(str_number)) #convert string เป็นค่าทศนิยม
ผลลัพธ์
56866625.897
การแปลงสตริงเป็นอักขระและการแปลงฐาน
อย่างที่เราทราบกันดีว่าสตริงคือชุดของอักขระ แต่ใน Python เราไม่สามารถรับค่า ASCII ของอักขระได้โดยตรง เราจำเป็นต้องใช้เมธอด ord() เพื่อแปลงอักขระให้เป็นค่า ASCII
มีวิธีการอื่นเช่น hex(), ord(), bin() ในการแปลงเลขฐานสิบเป็นเลขฐานสิบหก, เลขฐานแปด, ไบนารีตามลำดับ
โค้ดตัวอย่าง
print('ค่า ASCII ของ "G" คือ:' + str(ord('G')))print('ค่าเลขฐานสิบหกของ 254 คือ:' + str(hex(254)))print('ค่าฐานแปด จาก 62 คือ:' + str(oct(62)))print('ค่าไบนารีของ 56 คือ:' + str(bin(56)))
ผลลัพธ์
ค่า ASCII ของ "G" คือ:71ค่าฐานสิบหกของ 254 คือ:0xfeOctal ค่าของ 62 คือ:0o76ค่าไบนารีของ 56 คือ:0b111000
การแปลงคอนเทนเนอร์
ใน Python มีอ็อบเจ็กต์ประเภทคอนเทนเนอร์ที่แตกต่างกัน เช่น list, tuples, sets เป็นต้น เราสามารถเปลี่ยนคอนเทนเนอร์ประเภทหนึ่งเป็นคอนเทนเนอร์ประเภทอื่นได้โดยใช้ list(), tuple(), set() เป็นต้น
โค้ดตัวอย่าง
my_list =[10, 20, 30, 40, 50]my_set ={10, 10, 20, 30, 20, 50, 20}print('From list to tuple:' + str(tuple(my_list)) )print('จากชุดไปยังรายการ:' + str(set(my_list)))print('จากชุดไปยังรายการ:' + str(รายการ(my_set)))
ผลลัพธ์
จากรายการเป็นทูเพิล:(10, 20, 30, 40, 50) จากรายการไปยังชุด:{40, 10, 50, 20, 30}จากชุดไปยังรายการ:[10, 20, 50, 30]
จำนวนเชิงซ้อน
ใน Python มีคลาสจำนวนเชิงซ้อน เมื่อใช้สิ่งนี้ เราสามารถแปลงจำนวนเต็มสองจำนวน (ส่วนจริงและส่วนจินตภาพ) เป็นจำนวนเชิงซ้อนได้
โค้ดตัวอย่าง
my_complex =complex(10, 5) #convert to complex numberprint(my_complex)
ผลลัพธ์
(10+5j)
ทูเพิลกับพจนานุกรม
Tuple เป็นหนึ่งในคอนเทนเนอร์ที่สำคัญที่สุดใน Python เมื่อใช้ tuples เราสามารถจัดเก็บข้อมูลที่สั่งซื้อได้ ใน Python เราสามารถแปลงอ็อบเจ็กต์ประเภททูเพิลด้วยสองค่าเป็นอ็อบเจกต์พจนานุกรม วิธี dict() สามารถแปลงได้
โค้ดตัวอย่าง
my_tuples =(('Tiger', 4), ('Cat', 6), ('Dog', 8), ('Elephant', 10))my_dict =dict(my_tuples)print(my_dict)ก่อน>ผลลัพธ์
{'Tiger':4, 'Elephant':10, 'Dog':8, 'Cat':6}