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

Python – จัดเรียงรายการสตริงที่กำหนดโดยแยกส่วนของตัวเลขของสตริง


เมื่อจำเป็นต้องจัดเรียงรายการสตริงที่กำหนดตามส่วนตัวเลขของสตริง จะมีการกำหนดวิธีการที่ใช้นิพจน์ทั่วไป เมธอด 'map' และวิธีการ 'list' เพื่อแสดงผลลัพธ์

ตัวอย่าง

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

import re
print("The regular expression package has been imported successfully.")

def my_digit_sort(my_list):
   return list(map(int, re.findall(r'\d+', my_list)))[0]

my_list = ["pyt23hon", "fu30n", "lea14rn", 'co00l', 'ob8uje3345t']

print("The list is : " )
print(my_list)

my_list.sort(key=my_digit_sort)
print("The list has been sorted based on the pre-defined method..")

print("The resultant list is : ")
print(my_list)

ผลลัพธ์

The regular expression package has been imported successfully.
The list is :
['pyt23hon', 'fu30n', 'lea14rn', 'co00l', 'ob8uje3345t']
The list has been sorted based on the pre-defined method..
The resultant list is :
['co00l', 'ob8uje3345t', 'lea14rn', 'pyt23hon', 'fu30n']

คำอธิบาย

  • แพ็คเกจที่จำเป็นจะถูกนำเข้าสู่สภาพแวดล้อม

  • มีการกำหนดเมธอดชื่อ 'my_digit_sort' และแสดงรายการเป็นพารามิเตอร์

  • ใช้นิพจน์ทั่วไปและวิธีการ 'findall' ของแพ็คเกจ 're' เพื่อค้นหาตัวเลขที่มีอยู่ในคำ

  • มีการแมปกับองค์ประกอบทั้งหมดในรายการ

  • สิ่งนี้ถูกแปลงเป็นรายการและส่งคืนเป็นเอาต์พุต

  • นอกเมธอด รายการสตริงที่มีจำนวนเต็มถูกกำหนดและแสดงบนคอนโซล

  • รายการนี้จัดเรียงตามวิธีการที่กำหนดไว้ล่วงหน้า

  • เอาต์พุตนี้จะแสดงบนคอนโซล