Không quá cơ bản, nhưng điều này:
>>> char1 = ['a''b''c''d''e''f''g''h''i''j''k''l'
'm''n''o''p''q''r''s''t''u''v''w''x''y''z']
rất khác so với thế này:
>>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
Đầu tiên, không có dấu phẩy và những gì bạn có trong câu hỏi của bạn, là một danh sách một phần tử với chuỗi phần tử 26. Thứ hai là một danh sách phần tử 26 mỗi một ký tự duy nhất có chiều dài.
Nếu bạn in mỗi:
>>> print char1, len[char1], len[char1[0]]
['abcdefghijklmnopqrstuvwxyz'] 1 26
>>> print char2, len[char2], len[char2[0]]
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l',
'm', 'n', 'o', 'p', 'q','r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] 26 1
Rõ ràng là nó thực hiện một bước bổ sung để biến các ký tự riêng lẻ của
>>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
0 thành một điều đáng tin cậy.Nếu bạn có chuỗi các ký tự 'A' qua 'Z' và/hoặc 'A' qua 'Z', bạn có thể dễ dàng trả về số lượng ký tự với sự hiểu biết danh sách:
>>> [ord[x]%32 for x in char2]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26]
Đối với loại cấu trúc dữ liệu bạn có, bạn cần truy cập chuỗi trước:
>>> [ord[x]%32 for x in char1[0]]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26]
Vì vậy, nếu danh sách mã của bạn giống như trong câu hỏi của bạn, đó có thể là vấn đề của bạn.
Một sự thay thế hợp lý là:
>>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
1Bạn có thể thấy rằng
>>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
2 của bạn, không có dấu phẩy, giống như gõ tất cả các ký tự trong một chuỗi trong một danh sách như thế này >>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
3.Vì vậy, bây giờ hãy thử:
>>> import string
>>> [ord[x.lower[]]-96 for x in string.letters]
[1,2,...26, 1,2,3...26] # my ellipses
>>> char3=[string.letters] # one string as element[0]
>>> [ord[x]%32 for x in char3[0]]
>>> [ord[x]%32 for x in [string.letters][0]]
Có chức năng bảng chữ cái trong Python không? Làm thế nào để Python làm thế nào Chuyển đổi thư thành số trong Python Được tạo ra: Tháng 10-09, 2021 | Cập nhật: Tháng 10-22 năm 2021 Sử dụng hàm
5 để chuyển đổi các chữ cái thành các số trong Python>>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
4 để chuyển đổi các chữ cái thành các số trong Python>>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
Hàm isalpha [] là hàm tích hợp được sử dụng để xử lý chuỗi trong python, kiểm tra xem ký tự đầu vào đơn là bảng chữ cái hay nếu tất cả các ký tự trong chuỗi đầu vào là bảng chữ cái.
Làm thế nào để
Mã sau sử dụng hàm
>>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
4 để chuyển đổi các chữ cái thành các số trong Python.l = "web"
n = []
for x in l:
n.append[ord[x] - 96]
print[n]
Mã trên cung cấp đầu ra sau:
[23, 5, 2]
Sử dụng >>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
5 để chuyển đổi các chữ cái thành các số trong Python
>>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
>>> [ord[x]%32 for x in char2]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26]
0 là một cách tương đối ngắn hơn và tinh tế để tạo các danh sách được hình thành dựa trên các giá trị được đưa ra của một danh sách đã có.Mã này có thể được hoàn thành khá nhiều với một lớp lót bằng cách sử dụng danh sách hiểu ở đây.
Mã sau sử dụng danh sách hiểu để chuyển đổi các chữ cái thành các số trong Python.
l = "web"
n = [ord[x] - 96 for x in l]
print[n]
Mã trên cung cấp đầu ra sau:
[23, 5, 2]
Sử dụng >>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
5 để chuyển đổi các chữ cái thành các số trong Python
>>> char2 = ['a','b','c','d','e','f','g','h','i','j','k','l',
'm','n','o','p','q','r','s','t','u','v','w','x','y','z']
>>> [ord[x]%32 for x in char2]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26]
0 là một cách tương đối ngắn hơn và tinh tế để tạo các danh sách được hình thành dựa trên các giá trị được đưa ra của một danh sách đã có.Xóa dấu phẩy khỏi chuỗi trong Python
>>> [ord[x]%32 for x in char2]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26]
0 là một cách tương đối ngắn hơn và tinh tế để tạo các danh sách được hình thành dựa trên các giá trị được đưa ra của một danh sách đã có.