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

Python – ดึงตัวเลขที่มีหลักเฉพาะตามที่กำหนดจากลิสต์

เมื่อต้องการดึงตัวเลขจากลิสต์ที่หลักตัวเลขทุกหลักอยู่ในลิสต์ที่กำหนด (digit_list) สามารถใช้ list comprehension และ all() ได้

ตัวอย่าง

my_list = [3345, 2345, 1698, 2475, 1932]
print("The list is :")
print(my_list)
digit_list = [2, 3, 5, 4]
my_result = [index for index in my_list if all(int(element) in digit_list for element in str(index))]
print("The result is :")
print(my_result)

ผลลัพธ์

The list is : [3345, 2345, 1698, 2475, 1932]
The result is : [3345, 2345]

คำอธิบาย

  • กำหนดลิสต์ตัวเลขและลิสต์หลักตัวเลขที่อนุญาต (digit_list)

  • ใช้ list comprehension วนลูปตัวเลขแต่ละตัว (index) แปลงเป็นสตริง

  • ใช้ all(int(element) in digit_list for element in str(index)) ตรวจสอบทุกหลัก

  • 3345 (3,3,4,5) และ 2345 (2,3,4,5) ผ่านเงื่อนไข ตัวอื่นมีหลักไม่อยู่ใน digit_list

  • แสดงผลลัพธ์