Python sắp xếp chữ và số

Cho một danh sách chứa cả các giá trị chữ và số, hãy viết chương trình Python để sắp xếp danh sách đã cho theo cách mà các giá trị theo thứ tự bảng chữ cái luôn xuất hiện sau các giá trị số

ví dụ

Input : ['k', 5, 'e', 3, 'g', 7, 0, 't']
Output : [0, 3, 5, 7, 'e', 'g', 'k', 't']

Input : [1, 'c', 3, 2, 'a', 'b']
Output : [1, 2, 3, 'a', 'b', 'c']

Cách tiếp cận 1. Sử dụng phương thức sắp xếp()

Để sử dụng phương thức Python

[0, 3, 5, 7, 'e', 'g', 'k', 't']
5, trước tiên chúng ta cần chuyển đổi tất cả các giá trị danh sách thành loại str. Bây giờ có hai phương pháp để chuyển đổi giá trị thành chuỗi

  • Phương pháp #1. Khả năng hiểu danh sách
    Tính năng hiểu danh sách Python có thể được sử dụng đơn giản để chuyển đổi từng phần tử của danh sách thành kiểu chuỗi. Chúng tôi sắp xếp nó và vì tất cả các giá trị hiện là loại str, chúng tôi thay đổi danh sách cuối cùng để trở lại dạng ban đầu.




    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    6

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    7

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    8

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    9
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    0

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    1
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    2
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    3
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    4
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    5
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    6
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    7__
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    6
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    9
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    6
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    51
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    6
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    53
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    6
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    55
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    6
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    57
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    6
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    59
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    60

    Có rất nhiều tính thần kinh ở đây, và tôi rất chống lại nó, vì vậy, câu trả lời cho kết luận của tôi sẽ là

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    6
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    70 tương đương với
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    75, đây là khá nhiều thứ bạn muốn (ngoại trừ khi chúng tôi giới thiệu Unicode cho hỗn hợp)

    Sử dụng bộ định lượng

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    97, bạn sẽ khớp với một hoặc nhiều ký tự. Nếu bạn cũng muốn nhận một chuỗi trống, hãy sử dụng
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    98 để thay thế

    Đã trả lời ngày 5 tháng 12 năm 2008 lúc 5. 25ngày 5 tháng 12 năm 2008 lúc 5. 25 5 tháng 12 năm 2008 lúc 5. 25

    Kchkchkch kch

    75,4K46 Huy hiệu vàng134 Huy hiệu bạc148 Huy hiệu đồng46 Huy hiệu vàng134 Huy hiệu bạc148 Huy hiệu đồng46 Huy hiệu vàng134 Huy hiệu bạc148 bronze badges

    4

    Bạn muốn kiểm tra xem mỗi ký tự có phù hợp với yêu cầu của bạn không, đó là lý do tại sao chúng tôi sử dụng

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    9

    Và bạn thậm chí có thể sử dụng tốc độ phiên bản

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    7

    Tương đương (trong một số hương vị regex, vì vậy hãy chắc chắn rằng bạn kiểm tra trước khi sử dụng nó). Sau đó, để chỉ ra rằng toàn bộ chuỗi phải phù hợp, bạn sử dụng

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    36

    To only ra string must start with that character, after that used

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    37

    To only ra string must end with that character. Sau đó sử dụng

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    38

    To only out "1 trở lên" hoặc "0 trở lên". Đặt tất cả lại với nhau, chúng tôi có

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    39

    Đã trả lời ngày 3 tháng 12 năm 2008 lúc 5. 08ngày 3 tháng 12 năm 2008 lúc 5. 08 Ngày 3 tháng 12 năm 2008 lúc 5. 08

    AntonantonAnton Anton

    1. 3572 Huy hiệu vàng17 Huy hiệu bạc 30 Huy hiệu Đồng2 huy hiệu vàng17 huy hiệu bạc30 huy hiệu đồng2 huy hiệu vàng17 huy hiệu bạc30 bronze badges

    2

    Mặc dù nó dài hơn

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    70, cá nhân tôi đánh giá khả năng đọc cao của các tên nhân vật lớp POSIX đầy đủ (http. //www. zytrax. com/công nghệ/web/regex. htm#special), vì vậy tôi muốn nói.
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    91

    Tuy nhiên, trong khi tài liệu ở các liên kết trên nói rằng

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    70 will "khớp với bất kỳ ký tự nào trong phạm vi 0 - 9, a - z và a - z (tương đương với posix [. hàng năm. ])" cái đó. Không phải với
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    360 dù sao. Bạn cần phải bao gồm một cách rõ ràng có dấu gạch dưới nếu bạn sử dụng
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    361 nhưng không nếu bạn sử dụng
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    70. Bạn không thể đánh bại những điều sau đây ngắn và ngọt ngào.
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    30

    Cùng với khả năng đọc, hãy sử dụng các ký tự lớp POSIX (http. //www. biểu thức chính quy. thông tin/posixbrackets. html) có nghĩa là Regex của bạn có thể hoạt động trên các chuỗi không phải ASCII, mà phạm vi dựa trên Thứ tự cơ bản của các ký tự ASCII có thể khác với các bộ ký tự khác và do đó sẽ loại trừ một số ký tự

    Đã trả lời ngày 9 tháng 6 năm 2012 lúc 22. 53Ngày 9 tháng 6 năm 2012 tại 22. 53 9 tháng 6 năm 2012 lúc 22. 53

    um. câu hỏi. Nó cần phải có ít nhất một nhân vật hay không?

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    31

    Sẽ thực hiện ít nhất một chữ số trên hoặc chữ số dưới hoặc dưới mức hoặc gạch dưới. If it could be by 0, then just need to replace + for *

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    32

    Nếu DiaCritics cần được đưa vào (không giới hạn như Cedilla - ç), thì bạn sẽ cần sử dụng các ký tự từ giống như trên, nhưng bao gồm các ký tự điều chỉnh

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    30

    hoặc

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    39

    Đã trả ngày 3 tháng 12 năm 2008 lúc 4. 31ngày 3 tháng 12 năm 2008 lúc 4. 31 3 tháng 12 năm 2008 lúc 4. 31

    BenalabasterbenalabasterBenAlabaster BenAlabaster

    38. 2K21 Huy hiệu vàng107 Huy hiệu bạc149 Huy hiệu đồng21 huy hiệu vàng107 huy hiệu bạc149 huy hiệu đồng21 huy hiệu vàng107 huy hiệu bạc149

    5

    Trong khoa học máy tính, một giá trị chữ và số thường có nghĩa là ký tự đầu tiên không phải là một số, nhưng nó là bảng chữ cái hoặc gạch dưới. Sau đó, nhân vật có thể là

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    363,
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    364,
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    365 hoặc dấu gạch dưới (
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    366)

    Đây là cách bạn sẽ làm điều đó

    Được kiểm tra theo PHP

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    35

    Hoặc lấy

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    36

    and set it by your development language

    Đã trả ngày 31 tháng 1 năm 2012 lúc 13. 38Ngày 31 tháng 1 năm 2012 tại 13. 38 31 tháng 1, 2012 lúc 13. 38

    Use

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    37

    If you want to clear, or

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    30

    If you like short (Cú pháp Perl)

    Đã trả ngày 3 tháng 12 năm 2008 lúc 4. 31ngày 3 tháng 12 năm 2008 lúc 4. 31 3 tháng 12 năm 2008 lúc 4. 31

    BenalabasterbenalabasterDrew Hall Drew Hall

    38. 2K21 Huy hiệu vàng107 Huy hiệu bạc149 Huy hiệu đồng12 huy hiệu vàng60 huy hiệu bạc81 huy hiệu đồng12 huy hiệu vàng60 huy hiệu bạc81

    0

    Trong khoa học máy tính, một giá trị chữ và số thường có nghĩa là ký tự đầu tiên không phải là một số, nhưng nó là bảng chữ cái hoặc gạch dưới. Sau đó, nhân vật có thể là

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    363,
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    364,
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    365 hoặc dấu gạch dưới (
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    366)

    Đây là cách bạn sẽ làm điều đó

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    39

    Lưu ý. Tôi có thể đã sử dụng \ W, nhưng sau đó các cân nhắc về ECMA/Unicode xuất hiện, tăng mức độ bao phủ các ký tự của ký tự "W Word"

    Đã trả lời ngày 12 tháng 11 năm 2010 lúc 18. 2012 tháng 11, 2010 lúc 18. 20 12/11/2010 lúc 18 tuổi. 20

    Boooloooobooolooooobooolooooo boooloooo

    1591 Huy hiệu bạc3 Huy hiệu đồng1 huy hiệu bạc3 huy hiệu đồng1 huy hiệu bạc3 huy hiệu đồng

    1

    Điều này làm việc cho tôi. Tôi đã tìm thấy điều này trong "Biểu thức chính thức" của O'Reilly

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    6

    Giải trình

    • ^ khẳng định vị trí khi bắt đầu chuỗi
      • \ W+ match với bất kỳ ký tự từ nào (bằng [A-A-Z0-9_]))
      • "+" Trận đấu định lượng - match between one times and nonlimited, more times more better, return when need (tham lam)
    • $ khẳng định vị trí ở cuối chuỗi

    Xác minh bản thân

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    61

    Đã trả lời ngày 8 tháng 6 năm 2020 lúc 13. 33 Tháng Sáu 8, 2020 tại 13. 33 8 tháng 6 năm 2020 lúc 13. 33

    MiKr13MiKr13MiKr13 MiKr13

    1. 15511 huy hiệu bạc20 Huy hiệu đồng11 huy hiệu bạc20 huy hiệu đồng11 huy hiệu bạc20 huy hiệu đồng

    Hãy thử các tiện ích mở rộng đa ngôn ngữ mà tôi đã thực hiện cho chuỗi

    Isalphanumeric - Chuỗi phải chứa ít nhất một chữ cái (chữ cái trong phạm vi Unicode, được chỉ định trong Bộ ký tự) và ít nhất một số (được chỉ định trong Numset). Ngoài ra, chuỗi chỉ nên bao gồm alpha và số

    Isalpha - Chuỗi phải chứa ít nhất một chữ cái (trong ký tự ngôn ngữ được chỉ định) và chỉ bao gồm chữ cái

    Không phải là số - chuỗi phải chứa ít nhất một số (trong số ngôn ngữ được định nghĩa chỉ) và chỉ bao gồm các số

    Phạm vi Charset/Numset for language mong muốn có thể được định nghĩa. Các phạm vi Unicode có sẵn trên biểu tượng Unicode

    API

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    62

    Cách sử dụng

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    63

    Đã trả lời ngày 11 tháng 1 năm 2012 lúc 0. 52Ngày 11 tháng 1 năm 2012 lúc 0. 52 11 tháng 1 năm 2012 lúc 0. 52

    ChaianushantanuShantanu Shantanu

    1011 Huy hiệu bạc3 Huy hiệu đồng1 huy hiệu bạc3 huy hiệu đồng1 huy hiệu bạc3 huy hiệu đồng

    1

    Các biểu thức chính quy sau phù hợp với các ký tự chữ cái và số và dấu gạch dưới

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    64

    Ví dụ, trong Perl

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    65

    Đã trả ngày 3 tháng 12 năm 2008 lúc 4. 31ngày 3 tháng 12 năm 2008 lúc 4. 31 3 tháng 12 năm 2008 lúc 4. 31

    BenalabasterbenalabasterDrew Hall Jay

    38. 2K21 Huy hiệu vàng107 Huy hiệu bạc149 Huy hiệu đồng12 huy hiệu vàng60 huy hiệu bạc81 huy hiệu đồng14 huy hiệu vàng65 huy hiệu bạc83

    8

    Trong khoa học máy tính, một giá trị chữ và số thường có nghĩa là ký tự đầu tiên không phải là một số, nhưng nó là bảng chữ cái hoặc gạch dưới. Sau đó, nhân vật có thể là

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    367
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    363,______2364,
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    365 hoặc gạch dưới (
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    366).
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    66

    Lưu ý. Tôi có thể đã sử dụng \ W, nhưng sau đó các cân nhắc về ECMA/Unicode xuất hiện, tăng mức độ bao phủ các ký tự của ký tự "W Word"

    1. Đã trả lời ngày 12 tháng 11 năm 2010 lúc 18. 2012 tháng 11, 2010 lúc 18. 20
    2. Boooooooobooolooooobooolooooo
    3. 1591 Huy hiệu bạc3 Huy hiệu đồng1 huy hiệu bạc3 huy hiệu đồng
    4. Điều này làm việc cho tôi. Tôi đã tìm thấy điều này trong "Biểu thức chính thức" của O'Reilly
    5. ^ khẳng định vị trí khi bắt đầu chuỗi

    \ W+ match với bất kỳ ký tự từ nào (bằng [A-A-Z0-9_])) 24 tháng 12, 2019 lúc 6. 06

    3

    "+" Trận đấu định lượng - match between one times and nonlimited, more times more better, return when need (tham lam)

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    67

    $ khẳng định vị trí ở cuối chuỗi

    Xác minh bản thân. 3 tháng 4, 2012 lúc 14. 57

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    61 Agustin

    Đã trả lời ngày 8 tháng 6 năm 2020 lúc 13. 33 Tháng Sáu 8, 2020 tại 13. 3313 huy hiệu bạc10 huy hiệu đồng

    1

    1. 15511 huy hiệu bạc20 huy hiệu đồng11 huy hiệu bạc20 huy hiệu đồng

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    68

    Hãy thử các tiện ích mở rộng đa ngôn ngữ mà tôi đã thực hiện cho chuỗi

    Isalphanumeric - Chuỗi phải chứa ít nhất một chữ cái (chữ cái trong phạm vi Unicode, được chỉ định trong Bộ ký tự) và ít nhất một số (được chỉ định trong Numset). Ngoài ra, chuỗi chỉ nên bao gồm alpha và số. 12 huy hiệu vàng97 huy hiệu bạc154 huy hiệu đồng

    Isalpha - Chuỗi phải chứa ít nhất một chữ cái (trong các ký tự ngôn ngữ được định nghĩa chỉ) và chỉ bao gồm chữ cái. 24 Tháng sáu 2010 lúc 9. 25

    1

    Không phải là số - chuỗi phải chứa ít nhất một số (trong số ngôn ngữ được định nghĩa chỉ) và chỉ bao gồm các số

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    69

    Phạm vi Charset/Numset for language mong muốn có thể được định nghĩa. Các phạm vi Unicode có sẵn trên biểu tượng Unicode

    API. 11 huy hiệu vàng20 huy hiệu bạc28 huy hiệu đồng

    Đã trả lời ngày 11 tháng 1 năm 2012 lúc 0. 52Ngày 11 tháng 1 năm 2012 lúc 0. 52 3 tháng 12 năm 2008 lúc 4. 44

    ChaianushantanuShantanu mson

    1011 Huy hiệu bạc3 Huy hiệu đồng1 huy hiệu bạc3 huy hiệu đồng6 huy hiệu vàng38 huy hiệu bạc70

    0

    Các biểu thức chính quy sau phù hợp với các ký tự chữ cái và số và dấu gạch dưới

    Ví dụ, trong Perl

    JayjayJay

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    90

    40,9K14 Huy hiệu vàng65 Huy hiệu bạc83 Huy hiệu đồng14 Huy hiệu vàng65 Huy hiệu bạc83 Huy hiệu đồng 8 Tháng 2 2019 lúc 14. 08

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    71 sẽ hoạt động cho các kết hợp dưới đây.
    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    91

    Đã trả lời ngày 14 tháng 11 năm 2017 lúc 15. 5014 tháng 11, 2017 tại 15. 50 14/11/2017 lúc 15. 50

    1

    Đối với Java, chỉ được phép cho phép chữ số không cảm ứng với chữ số và dấu gạch dưới

    • ^ Khớp với chuỗi bắt đầu với bất kỳ ký tự nào

    • [A-A-ZA-Z0-9 _]+ khớp với ký tự chữ và số và gạch dưới

    • $match with end string by 0 or many characters

      [0, 3, 5, 7, 'e', 'g', 'k', 't']
      
      92

    Đã trả ngày 6 tháng 3 năm 2021 lúc 12. 42ngày 6 tháng 3 năm 2021 tại 12. 42 Ngày 6 tháng 3 năm 2021 lúc 12. 42

    SharadsharadSharad Sharad

    3503 huy hiệu bạc6 Huy hiệu đồng3 huy hiệu bạc6 huy hiệu đồng3 huy hiệu bạc6 huy hiệu đồng

    Để kiểm tra toàn bộ chuỗi và không cho phép các chuỗi trống, hãy thử

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    31

    Đã trả ngày 3 tháng 12 năm 2008 lúc 4. 33ngày 3 tháng 12 năm 2008 lúc 4. 33 3 tháng 12 năm 2008 lúc 4. 33

    David Normandavid NormanDavid Norman David Norman

    Phim thương hiệu vàng 19K1164 Huy hiệu bạc54 Huy hiệu đồng11 huy hiệu vàng64 huy hiệu bạc54 huy hiệu đồng11 huy hiệu vàng64 huy hiệu bạc54 bronze badges

    0

    Điều này làm việc cho tôi. You can try

    [0, 3, 5, 7, 'e', 'g', 'k', 't']
    
    94

    Đã trả ngày 20 tháng 5 năm 2015 lúc 13. 0220 Tháng Năm, 2015 lúc 13. 02 20 Tháng Năm, 2015 lúc 13. 02

    SaurabhsaurabhSaurabh Saurabh

    7. 1694 Huy hiệu vàng43 Huy hiệu bạc43 Huy hiệu đồng4 Huy hiệu vàng43 Huy hiệu bạc43 Huy hiệu đồng4 Huy hiệu vàng43 Huy hiệu bạc43

    1

    Need format

    Cho phép ba điều này

    1. 0142171547295
    2. 014-2171547295
    3. 123abc

    Không cho phép các định dạng khác nhau

    ________ 195 ________ 196

    Đã trả lời ngày 13 tháng 10 năm 2020 lúc 10. 4613 tháng 10, 2020 tại 10. 46 13/10/2020 lúc 10. 46

    Có phải là chữ và số trong Python không?

    Python có một chuỗi đặc biệt \ w để phù hợp với chữ cái và bên dưới. Xin lưu ý rằng Regex này sẽ trả về True trong trường hợp nếu chuỗi có chữ và bên dưới. Xin lưu ý rằng biểu thức chính quy này sẽ trả về true trong trường hợp nếu chuỗi có chữ và số và dấu gạch dưới. . Xin lưu ý rằng biểu thức chính quy này sẽ trả về true trong trường hợp nếu chuỗi có chữ và số và dấu gạch dưới.

    Làm thế nào để bạn nhấn mạnh vào Regex?

    Ký tự _ (dấu gạch dưới) trong biểu thức chính quy có nghĩa là tên vùng phải có dấu gạch dưới ngay sau chuỗi chữ và số được đối sánh với dấu trích dẫn trước. Các. (giai đoạn) khớp với bất kỳ ký tự nào (một ký tự đại diện). tên khu vực phải có dấu gạch dưới ngay sau chuỗi chữ và số khớp với dấu ngoặc trước