Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

แปลง Tuple เป็นจำนวนเต็มใน Python


เมื่อจำเป็นต้องแปลงทูเพิลเป็นจำนวนเต็ม สามารถใช้ฟังก์ชันแลมบ์ดาและฟังก์ชัน 'ลด' ได้

ฟังก์ชันนิรนามเป็นฟังก์ชันที่กำหนดโดยไม่มีชื่อ ฟังก์ชันลดใช้พารามิเตอร์สองตัวคือ ฟังก์ชันและลำดับ โดยจะใช้ฟังก์ชันนี้กับองค์ประกอบทั้งหมดของรายการ/ลำดับ มีอยู่ในโมดูล 'functools'

โดยทั่วไป ฟังก์ชันใน Python ถูกกำหนดโดยใช้คีย์เวิร์ด 'def' แต่ฟังก์ชันที่ไม่ระบุตัวตนถูกกำหนดด้วยความช่วยเหลือของคีย์เวิร์ด 'lambda' ใช้นิพจน์เดียว แต่สามารถรับอาร์กิวเมนต์จำนวนเท่าใดก็ได้ มันใช้นิพจน์และส่งกลับผลลัพธ์ของมัน

ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -

ตัวอย่าง

import functools
my_tuple_1 = (23, 45, 12, 56, 78, 0)

print("The first tuple is : ")
print(my_tuple_1)

my_result = functools.reduce(lambda sub, elem: sub * 10 + elem, my_tuple_1)

print("After converting tuple to integer, it is ")
print(my_result)

ผลลัพธ์

The first tuple is :
(23, 45, 12, 56, 78, 0)
After converting tuple to integer, it is
2768380

คำอธิบาย

  • ดาวน์โหลดแพ็คเกจที่จำเป็นแล้ว
  • มีการกำหนด tuple และแสดงบนคอนโซล
  • ใช้ฟังก์ชัน reduce ซึ่งแลมบ์ดาและทูเพิลถูกส่งผ่านเป็นอาร์กิวเมนต์
  • ฟังก์ชันแลมบ์ดาทวีคูณทุกองค์ประกอบในทูเพิลด้วย 10 และเพิ่มองค์ประกอบก่อนหน้าเข้าไป
  • ข้อมูลการดำเนินการนี้ถูกเก็บไว้ในตัวแปร
  • ตัวแปรนี้คือเอาต์พุตที่แสดงบนคอนโซล