Có cách nào dễ dàng để sắp xếp các chữ cái trong một chuỗi theo thứ tự abc trong Python không?
Vì vậy đối với:
a = 'ZENOVW'
Tôi muốn quay lại:
'ENOVWZ'
- python
- string
122 hữu ích 0 bình luận 248k xem chia sẻ
answer
217
Bạn có thể làm:
>>> a = 'ZENOVW'
>>> ''.join[sorted[a]]
'ENOVWZ'
217 hữu ích 1 bình luận chia sẻ
answer
78
>>> a = 'ZENOVW'
>>> b = sorted[a]
>>> print b
['E', 'N', 'O', 'V', 'W', 'Z']
sorted
trả về một danh sách, vì vậy bạn có thể tạo lại chuỗi đó bằng cách sử dụng join
:
>>> c = ''.join[b]
nối các mục b
cùng với một chuỗi
trống ''
ở giữa mỗi mục.
>>> print c
'ENOVWZ'
78 hữu ích 0 bình luận chia sẻ
answer
26
Giải pháp Sắp xếp [] có thể cung cấp cho bạn một số kết quả không mong muốn với các chuỗi khác.
Danh sách các giải pháp khác:
Sắp xếp các chữ cái và làm cho chúng khác biệt:
>>> s = "Bubble Bobble"
>>> ''.join[sorted[set[s.lower[]]]]
' belou'
Sắp xếp các chữ cái và làm cho chúng khác biệt trong khi giữ mũ:
>>> s = "Bubble Bobble"
>>> ''.join[sorted[set[s]]]
' Bbelou'
Sắp xếp các chữ cái và giữ các bản sao:
>>> s = "Bubble Bobble"
>>> ''.join[sorted[s]]
' BBbbbbeellou'
Nếu bạn muốn loại bỏ khoảng trắng trong kết quả, hãy thêm hàm dải [] trong bất kỳ trường hợp nào được đề cập:
>>> s = "Bubble Bobble"
>>> ''.join[sorted[set[s.lower[]]]].strip[]
'belou'
26 hữu ích 1 bình luận chia sẻ
answer
7
Bạn có thể sử dụng giảm
>>> a = 'ZENOVW'
>>> reduce[lambda x,y: x+y, sorted[a]]
'ENOVWZ'
7 hữu ích 0 bình luận chia sẻ
answer
1
mã có thể được sử dụng để sắp xếp chuỗi theo thứ tự bảng chữ cái mà không sử dụng bất kỳ chức năng sẵn có nào của python
k = input ["Nhập lại bất kỳ chuỗi nào"]
li = []
x = len[k]
for i in range [0,x]:
li.append[k[i]]
print["List is : ",li]
for i in range[0,x]:
for j in range[0,x]:
if li[i]>>a = "Hello World!"
>>>"".join[sorted[a]]
' !!HWdellloor'
ĐÚNG : Để viết chuỗi đã sắp xếp mà không thay đổi trường hợp chữ. Sử dụng mã:
>>> a = "Hello World!"
>>> "".join[sorted[a,key=lambda x:x.lower[]]]
' !deHllloorW'
Nếu bạn muốn loại bỏ tất cả dấu chấm câu và số. Sử dụng mã:
>>> a = "Hello World!"
>>> "".join[filter[lambda x:x.isalpha[], sorted[a,key=lambda x:x.lower[]]]]
'deHllloorW'
1 hữu ích 0 bình luận chia sẻ