เราทุกคนสามารถประกาศและทำงานกับประเภทข้อมูลได้ เราเคยสงสัยเกี่ยวกับการแปลงระหว่างกันหรือไม่? ในบทความนี้ เราเรียนรู้เกี่ยวกับวิธีที่เราสามารถแปลงประเภทข้อมูลเหล่านี้โดยใช้ฟังก์ชัน inbuilt ใน Python a.k.a Type Casting Type Casting มีสองประเภท:Implicit &Explicit. ในโมดูลนี้ เราจะพูดถึงเฉพาะการแคสต์ประเภทที่ชัดเจนเท่านั้น
มาดูการแปลงพื้นฐาน &ประเภทกันบ้าง
การแปลงประเภทจำนวนเต็มใน Python
ฟังก์ชัน int() ช่วยให้เราสามารถแปลงประเภทข้อมูลเป็นจำนวนเต็มได้ ยอมรับสองพารามิเตอร์เท่านั้น คือ ฐาน และ ตัวเลข โดยที่ ฐาน หมายถึงฐานของค่าจำนวนเต็มที่เป็นของ (ไบนารี[2], ฐานแปด[8], เลขฐานสิบหก[16])
การแปลงประเภทโฟลตใน Python
ฟังก์ชัน float() ช่วยให้เราสามารถแปลงประเภทข้อมูลใด ๆ ให้เป็นตัวเลขทศนิยมได้ โดยจะรับค่าพารามิเตอร์เพียงตัวเดียว นั่นคือ ค่าของประเภทข้อมูลที่ต้องแปลง
ตัวอย่าง
#Type casting value = "0010110" # int base 2 p = int(value,2) print ("integer of base 2 format : ",p) # default base d=int(value) print ("integer of default base format : ",d) # float e = float(value) print ("corresponding float : ",e)
ผลลัพธ์
integer of base 2 format : 22 integer of default base format : 10110 corresponding float : 10110.0
ในโค้ดด้านบนนี้ เราได้แปลงจำนวนเต็มด้วยฐานใน Python
. ด้วยการแปลงประเภท Tuple ใน Python
ฟังก์ชัน tuple() ช่วยให้เราสามารถแปลงเป็น tuple ยอมรับพารามิเตอร์หนึ่งตัวไม่ว่าจะเป็นสตริงหรือรายการ
รายการประเภทการแปลงใน Python
ฟังก์ชัน list() ช่วยให้เราสามารถแปลงประเภทข้อมูลเป็นประเภทรายการได้ ยอมรับพารามิเตอร์เพียงตัวเดียว
การแปลงประเภทพจนานุกรมใน Python
ฟังก์ชัน dict() ใช้เพื่อแปลง tuple ของคำสั่ง (คีย์, ค่า) เป็นพจนานุกรม คีย์ต้องไม่ซ้ำกันโดยธรรมชาติ มิฉะนั้น ค่าที่ซ้ำกันจะถูกแทนที่
ตัวอย่าง
#Type casting str_inp = 'Tutorialspoint' # converion to list j = list(str_inp) print ("string to list : ") print (j) # conversion to tuple i = tuple(str_inp) print ("string to tuple : ") print (i) # nested tuple tup_inp = (('Tutorials', 0) ,('Point', 1)) # conversion to dictionary c = dict(tup_inp) print ("list to dictionary : ",c) # nested list list_inp = [['Tutorials', 0] ,['Point', 1]] # conversion to dictionary d = dict(list_inp) print ("list to dictionary : ",d)
ผลลัพธ์
string to list : ['T', 'u', 't', 'o', 'r', 'i', 'a', 'l', 's', 'p', 'o', 'i', 'n', 't'] string to tuple : ('T', 'u', 't', 'o', 'r', 'i', 'a', 'l', 's', 'p', 'o', 'i', 'n', 't') list to dictionary : {'Tutorials': 0, 'Point': 1} list to dictionary : {'Tutorials': 0, 'Point': 1}
การแปลงประเภทสตริงใน Python
ฟังก์ชัน str() ใช้เพื่อแปลงจำนวนเต็มหรือลอยเป็นสตริง ยอมรับเพียงหนึ่งอาร์กิวเมนต์
Ascii chr() &ord() ประเภทการแปลงใน Python
chr()-ฟังก์ชันนี้ใช้เพื่อแปลงประเภทจำนวนเต็มเป็นประเภทอักขระ
ord()-ฟังก์ชันนี้ใช้เพื่อแปลงประเภทอักขระเป็นประเภทจำนวนเต็ม
ตัวอย่าง
#Type casting char_inp = 'T' #converting character to corresponding integer value print ("corresponding ASCII VALUE: ",ord(char_inp)) int_inp=92 #converting integer to corresponding Ascii Equivalent print ("corresponding ASCII EQUIVALENT: ",chr(int_inp)) #integer and float value inp_i=231 inp_f=78.9 # string equivalent print ("String equivalent",str(inp_i)) print ("String equivalent",str(inp_f))
ผลลัพธ์
corresponding ASCII VALUE: 84 corresponding ASCII EQUIVALENT: \ String equivalent 231 String equivalent 78.9
บทสรุป
ในบทความนี้ เราได้เรียนรู้เกี่ยวกับการแคสต์ประเภทที่ชัดเจนใน Python 3.x หรือก่อนหน้านั้น