如何将字符串截断为不超过50个字节?
a = 'asdfzx안녕하세요awelkjawletjawetr방갑습니다.dlgawklejtwgasdgsdfgd
sdfasdfsdafa궁금해요rewgargasregawergedrhsedhesrdhrthdrfjydjdrktydjdyj'
max = 50byte
a = max(a)
答案 0 :(得分:0)
您可以使用getsizeof()
来获取大小,然后将其放入if语句中进行检查。getsizeof()
以字节为单位返回对象的大小。希望我的示例为您提供一个想法:
from sys import getsizeof
a = '4200547985984359347509gbrtbhrtbrtbargrefefwefwef'
b = 'hello'
if getsizeof(a.encode('ascii')) > 50 :
print("Error:a")
if getsizeof(b.encode('ascii')) > 50 :
print("Error:b")
答案 1 :(得分:0)
如果每个字节编码使用一个字符,则可以使用切片:
a = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
a[:50]
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
请注意,只有在某处写这篇文章才有意义。如果python对象表示的大小在你的用例中更有意义,@ Achilles的答案应该有效。