如何为不同的Python平台替换用户输入中的一些特殊字符

2024-04-29 04:33:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要用Python替换不同平台(如Linux和Windows)的用户输入中的一些特殊字符。这是我的代码:

if request.method == 'POST':
        rname1 = request.POST.get('react')

这里我通过post方法获取用户输入。我需要从用户输入中删除以下字符(如果有)。在

^{pr2}$

上面给出了特殊字符。在这里我需要删除Linux和Windows。在


Tags: 方法代码用户getifrequestlinuxwindows
1条回答
网友
1楼 · 发布于 2024-04-29 04:33:21

Python字符串有一个内置方法translate,用于替换/删除字符。您需要构建一个转换表,然后调用函数。在

import sys
if "win" in sys.platform:
    special = """( ) < >  * ‘  = ? ; [ ] ^ ~ ! . ” % @ / \ : + , `""".split()
else:
    special = """{ }  ( ) < >  * ‘  = ? ; [ ]  $ – # ~ ! . ” %  / \ : + , `""".split()

trans_dict = {character: None for character in special}
trans_table = str.maketrans(trans_dict)
print("Lo+=r?e~~m ipsum dol;or sit!! amet, consectet..ur ad%".translate(trans_table))

将打印Lorem ipsum dolor sit amet consectetur ad。在

如果要使用替换字符而不是删除,请将上面的None替换为该字符。您可以使用特定的替换来构建翻译表,`{“a”:“m”,“b”:“n”,…}

编辑:上面的片段确实在Python3中。在Python2(TiO)中,它是easier to delete characters

^{pr2}$

请注意,我已经用'替换了,并用"替换了{},因为我认为您只处理ascii字符串。在

相关问题 更多 >