Python的转换'\\'到'\\\\' [英] Python converting '\' to '\\'
问题描述
我写一个程序进行排序FO的输入字符串(歌曲名称)的列表。
这些songnames含有乳胶字符如$ \\ $拉姆达,我想
得到分类像'拉姆达'代替,SA我使用一个提出申请的能力
排序期间的函数的每个元素。像这样的:
# - * - 编码:UTF8 - * -
高清CONV(INP):
如果INP =='$ \\ $拉姆达':
回报拉姆达
其他:
回报INPmlist = []
mlist.append('马丁')
mlist.append('珍妮')
mlist.append(日月光)
mlist.append('$ \\ $拉姆达')
mlist.append('拉姆达')
mlist.append('\\她')
打印(mlist)
mlist =排序(mlist,键= CONV(str.lower))
打印(mlist)
但由于某些原因,当我追加的λ
标记或 \\她
它转换为 \\\\她
或 $ \\\\拉姆达$
,我可以prevent呢?
但由于某些原因,当我追加
的λ
标记或\\她
它转换为\\\\她
或$ \\\\拉姆达$
...
块引用>没有没有。你看到的是重新presentation 的,它总是为清楚起见双打独奏反斜杠。如果你的打印的实际的字符串,而不是你会看到,他们是很好。
I am writing a program to sort a list fo input strings (song names). Those songnames contains latex chars like $\lambda$, which i want to get sorted like 'lambda' instead, så i'm using a the ability to apply a function to each element during sort. like this:
# -*- coding: UTF8 -*- def conv( inp ): if inp == '$\lambda$': return 'lambda' else: return inp mlist = [] mlist.append('martin') mlist.append('jenny') mlist.append('åse') mlist.append('$\lambda$') mlist.append('lambda') mlist.append('\her') print (mlist) mlist = sorted(mlist, key=conv(str.lower)) print (mlist)
But for some reason, when i append the
lambda
sign or\her
it converts it to\\her
or$\\lambda$
, can i prevent this?解决方案But for some reason, when i append the
lambda
sign or\her
it converts it to\\her
or$\\lambda$
...No it doesn't. What you're seeing is the representation, which always doubles solo backslashes for clarity. If you print the actual strings instead you'll see that they're fine.
这篇关于Python的转换'\\'到'\\\\'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!