我正在尝试编写一个函数,它接收一个字符串,然后每个字符都应该按照其Unicode值进行排序。我就是想不通这个问题。我首先创建了一个空字典和一个空列表。我想首先将单词分离并存储在该列表中,然后使用than列表的成员(这是我的分离单词)作为字典的关键字,然后对字典进行排序。任何帮助都将不胜感激。我被困在如何映射它的问题上,使用我的列表元素作为我的字典的值。请原谅我初学者的错误。因此,如果我给我的函数"ja“作为参数,列表将如下所示
My_list='j','a‘
然后我希望我的字典使用成员作为关键字,如下所示
word_dic={'j':1,'a':2}
我对j和value使用了任意值。它们的实际价值是它们的Unicode值
word_dic={}
My_List=[]
def strsort(word):
for i in range(len(word)):
My_List.append(word[i])
for k,v in word_dic.items():
word_dic[My_List[i]] =ord(i)发布于 2021-09-06 07:24:38
在较新的Python版本中,dict保持插入顺序see。
如果您使用的是旧版本,则在将值插入字典之前进行排序可能是无用的。
这将为您提供一个字典,其中字符按其Unicode值进行排序:
word_dic={}
My_List=[]
def strsort(word):
global word_dic, My_List
My_List = list(word)
sortedListByCode = sorted(My_List)
for i in sortedListByCode:
if i not in word_dic:
word_dic[i] = ord(i)
strsort("Ja")
print(word_dic)发布于 2021-09-06 07:23:50
有一个内置的排序函数,可以对任何可迭代的对象(list,str,set,...)进行排序。在字符串上使用它将返回一个列表,其中包含按Unicode顺序排列的字符串中的所有字符:
>>> sorted("asdfabc")
['a', 'a', 'b', 'c', 'd', 'f', 's']https://stackoverflow.com/questions/69070303
复制相似问题