繁体   English   中英

在 Python 中对字符串进行百分比编码

[英]Percent-encoding a string in Python

我有一个 HTTP 请求,我正在尝试根据用户输入进行处理。 为此,我需要将所有非字母数字字符转换为相应的百分比。例如,我希望将Broome Street转换为Broome%20Street 现在,如果空间是我所争论的全部,我会简单地写一个.replace(' ','%20') ,但坦率地说,我不确定还有什么我没有考虑过。 (也许我是愚蠢的。无论哪种方式,这是一个可扩展的问题。)

有没有一种简单的方法,也许是一个库,可以快速简单地将字符串转换为 URL? 唯一的选择是创建两个列表并通过 for 循环压缩它们,这太疯狂了。

有很多方法可以做到这一点 - 这里描述了一些: 如何在 Python 中对查询字符串进行 urlencode?

基本上,您正在尝试执行“URL 编码”。 正如您所猜测的那样,字符串替换和/或正则表达式并不是最好的选择,因为有几个内置选项可以为您处理事情(例如一些需要处理的非显而易见的转换)

...并且不要使用该链接页面上显示的第一个选项 - 您可能想要使用

urllib.parse.quote_plus(...)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM