相关疑难解决方法(0)

Python:以字节为单位获取字符串的大小

我有一个要通过网络发送的字符串.我需要检查它所代表的总字节数.

sys.getsizeof(string_name)返回额外的字节.例如,对于sys.getsizeof("a")返回22,而一个字符仅在python中以1个字节表示.还有其他方法可以找到这个吗?

python

51
推荐指数
2
解决办法
5万
查看次数

在Python中生成随机UTF-8字符串

我想测试我的代码的Unicode处理.有什么我可以在random.choice()中选择从整个Unicode范围中选择,最好不是外部模块吗?谷歌和StackOverflow似乎都没有答案.

编辑:看起来这比预期的更复杂,所以我将重新解释这个问题 - 以下代码是否足以在Unicode中生成所有有效的非控制字符

unicode_glyphs = ''.join(
    unichr(char)
    for char in xrange(1114112) # 0x10ffff + 1
    if unicodedata.category(unichr(char))[0] in ('LMNPSZ')
    )
Run Code Online (Sandbox Code Playgroud)

python random unicode utf-8

23
推荐指数
4
解决办法
2万
查看次数

如何使用Python在Bytes中获取UTF-8字符串的大小

有这样的UTF-8字符串:

mystring = "i??ü?"
Run Code Online (Sandbox Code Playgroud)

是否可以使用Python(2.5)以字节为单位获取其(内存中)大小?

python

8
推荐指数
1
解决办法
8617
查看次数

为什么 sys.getsizeof 不等于 os.path.getsize?

这个问题可能看起来很傻,但是,我有一个/tmp/size.txt这样的内容:

hello
Run Code Online (Sandbox Code Playgroud)

os.path.getsize('/tmp/size.txt')6但是当我这样做时:

sys.getsizeof(b'hello')
# OR
sys.getsizeof(bytes(bytearray('hello')))
# OR
sys.getsizeof(bytes('hello'))
Run Code Online (Sandbox Code Playgroud)

它返回42

是什么之间的区别os.path.getsizesys.getsizeof

python

3
推荐指数
1
解决办法
1134
查看次数

标签 统计

python ×4

random ×1

unicode ×1

utf-8 ×1