python使用decode时候如何避免报错?

我在程序中获取到的字符串可能是
print('ab字符串'.encode()[0:4].decode())
也可能是
print('字符串'.encode()[0:4].decode())

由于必须使用UTF-8编码,当加粗部分是变量时,
我获取到的变量值不一定,我截取前4位再decode时候 会出现报错
请问如何避免它呢?

比如截取出来半个字符的时候,就舍弃。
我想到的方法是try,catch ,但是UTF8占3个字符,有时候多一个,有时候多两个,怎么处理好呢?

为什么不decode以后再截取呢?

先切片在转编码不行么
'字符串'[0:4].encode().decode
还是说怎么怎么个事儿

贴一个例子出来?
按照你的思路,可以把多一个或两个情况都考虑到?

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^