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

บันทึกเหตุการณ์ทูเพิลที่คล้ายกันใน Python


เมื่อจำเป็นต้องบันทึกเหตุการณ์ทูเพิลที่คล้ายกัน สามารถใช้เมธอด 'map', 'Counter' และวิธีการ 'sorted' ได้

สามารถใช้รายการเพื่อเก็บค่าที่แตกต่างกันได้ (เช่น ข้อมูลของประเภทข้อมูลใดๆ เช่น จำนวนเต็ม จุดลอยตัว สตริง และอื่นๆ) รายการ tuple โดยทั่วไปประกอบด้วย tuple อยู่ในรายการ

ฟังก์ชันแผนที่ใช้ฟังก์ชัน/การทำงานที่กำหนดกับทุกรายการใน iterable (เช่น list, tuple) ส่งคืนรายการเป็นผลลัพธ์

วิธี 'sorted' ใช้เพื่อจัดเรียงองค์ประกอบของรายการ

'ตัวนับ' เป็นคลาสย่อยที่ช่วยนับวัตถุที่แฮชได้ เช่น มันสร้างตารางแฮชด้วยตัวมันเอง (ของที่ทำซ้ำได้ เช่น รายการ ทูเพิล และอื่นๆ) เมื่อมันถูกเรียกใช้

ส่งคืน itertool สำหรับองค์ประกอบทั้งหมดที่มีค่าไม่เป็นศูนย์เป็นการนับ

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

ตัวอย่าง

from collections import Counter
my_list_1 = [(11, 14), (0, 78), (33, 67), (89, 0)]

print("The list of tuple is : ")
print(my_list_1)

my_result = dict(Counter(tuple(elem) for elem in map(sorted, my_list_1)))
print("The frequency of like tuples is : ")
print(my_result)

ผลลัพธ์

The list of tuple is :
[(11, 14), (0, 78), (33, 67), (89, 0)]
The frequency of like tuples is :
{(11, 14): 1, (0, 78): 1, (33, 67): 1, (0, 89): 1}

คำอธิบาย

แพ็คเกจที่จำเป็นจะถูกนำเข้า

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