2024-04-18 15:37:40 发布
网友
如果我想知道哪些字母是ascii字符集的一部分,我可以简单地问python,这很好:
>>> import string >>> string.ascii_letters 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
我搜索了一段时间,但找不到返回任意编码字符集的泛型函数。像这样:
还是我错过了?一个检查字符串是否只包含某些编码字符的函数也可以工作,但我希望直观地将所有有效字符作为一个列表。在
据我所知,在标准库中没有这样的函数。在
在缺乏更好的想法的情况下,这里有一个丑陋的黑客尝试用指定的编码对utf8范围内的每个字符进行编码,并删除那些无法编码的字符:
def get_charset(encoding): all_chars = ''.join(chr(x) for x in range(0x110000)) return all_chars.encode(encoding, errors='ignore').decode(encoding)
输出:
速度测试:
In [2]: %timeit get_charset('latin1') 306 ms ± 8.34 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
据我所知,在标准库中没有这样的函数。在
在缺乏更好的想法的情况下,这里有一个丑陋的黑客尝试用指定的编码对utf8范围内的每个字符进行编码,并删除那些无法编码的字符:
输出:
^{pr2}$速度测试:
相关问题 更多 >
编程相关推荐