写了个 python 批量生成序列号,请批评,吐槽

2014-05-17 16:24:31 +08:00
 xmbaozi
https://gist.github.com/baozy/83157cdff3d3e28f32f3

如题。
嗯,我是php码农
9011 次点击
所在节点    Python
18 条回复
binux
2014-05-17 16:28:10 +08:00
import uuid

uuid.uuid1()
uuid.uuid3(uuid.NAMESPACE_DNS, 'python.org')
uuid.uuid4()
uuid.uuid5(uuid.NAMESPACE_DNS, 'python.org')
guoqiao
2014-05-17 16:29:19 +08:00
@binux 不要这样打击别人嘛...
imlonghao
2014-05-17 17:41:01 +08:00
@binux 求不打击、
byron
2014-05-17 19:02:30 +08:00
我错过了什么?
leyle
2014-05-17 19:29:33 +08:00
打击的体无完肤啊
mengzhuo
2014-05-17 20:17:02 +08:00
写任何Python函数前都应该想想标准库哈哈哈哈
xmbaozi
2014-05-17 20:18:52 +08:00
额,才知道有这个uuid
不过用这个位数可控制吗
写下生成多个的代码

@binux
qdcanyun
2014-05-17 20:50:17 +08:00
@xmbaozi
uuid.uuid1().hex[:16]

这是你源代码生成16位的 16可以替换成其他长度
cbsw
2014-05-17 21:48:00 +08:00
Python 自带很多常用的电池。码代码之前先看看有没有用得着的电池,没有的话再看看 pypi 中有没有第三方的库,如果都没有或不能满足需要的话再考虑自己制造。

当然上述原则适用于实际生产运用,如果是学习的话,完全可以上来不参考任何库的实现,自己造轮子,然后与标准轮子对比,学习别人的造轮技术
tonic
2014-05-17 22:57:10 +08:00
@binux 哈哈哈哈哈哈哈哈哈哈
ericls
2014-05-17 23:08:12 +08:00
就像又一次我不知道operator.countOf(a,b)
ChanneW
2014-05-17 23:19:32 +08:00
我看的很顺利,我也不知道 uuid ,看来我也很菜。
ChanneW
2014-05-17 23:26:37 +08:00
这种问题怎么避免?只能遇到问题再去搜,个人经验积累?
cbsw
2014-05-18 08:41:01 +08:00
@ChanneW 在学习 python (或其它语言)过程中,在掌握了程序的基本写法之后,还有一个必须的过程就是将这种语言的标准库浏览一遍,对其有一个大致了解,具体详细的使用则不必看得太过仔细,等到需要用的时候就可以根据对标准库的印象去文档中相应章节查看。

其实 Python 的官方教程在这方面做得很好,基本的东西告诉你之后,接下来就是 brief tour of standard library ,非常合理(PS:这也是 K&R 的经典 C 语言书的结构)

不过我只是一个 Python 入门者,其它语言都没有深入学习过,所以这种学习经验没有在其它语言中实践过,感兴趣的话你可以在其它语言学习中试试,效果好的话可以告诉我哦 ^_^
lm902
2014-05-18 10:32:19 +08:00
(Math.random() + " ").substring(2)
xmbaozi
2014-05-18 10:37:37 +08:00
@qdcanyun uuid生成,再截取长度就没法保证唯一性吧
jamiesun
2014-05-18 14:45:36 +08:00
提供一个明确时间规则的函数,用于订单号生成

https://gist.github.com/jamiesun/d25d4680cdd79482fe60
tongle
2014-05-19 09:40:11 +08:00
@xmbaozi 应该是,截取之后碰撞的几率变大了。

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

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

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

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

© 2021 V2EX