golang slice vs Python 字符日 使用方便度

2018-03-13 16:27:01 +08:00
 kkfnui

使用过一段时间 python

今天在写 golang 处理日志,发现异常数据超过数据库字段最大长度限制。 写 python 的时候可以直接:

foo[:32]

golang 中就会存在问题。如果字符串长度不超过 32,则会直接抛出错误。

golang 写起来还是复杂很多。

自己再加个辅助函数,就是代码又变长了


// GetStringByLimit 如果字符串长度超过 limit, 截取字符串
func GetStringByLimit(foo string, limit int) string {
	if len(foo) > limit {
		return foo[:limit]
	}
	return foo
}

1094 次点击
所在节点    Go 编程语言
2 条回复
timonwong
2018-03-15 15:09:42 +08:00
golang string 是 utf-8 字符串,你这样截断是没有考虑多字节情况的
kkfnui
2018-03-16 09:37:10 +08:00
@timonwong 多谢提醒

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/437659

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX