V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  petelin  ›  全部回复第 30 页 / 共 36 页
回复总数  706
1 ... 22  23  24  25  26  27  28  29  30  31 ... 36  
2017-09-14 19:35:21 +08:00
回复了 xylsmmmmmmmm3 创建的主题 Python 用 str 转成字符串和 join 转成字符串有什么区别?
a['a'] 是个列表, str 的时候,就是那么打印的

''.join(a['a']) .........

算了我懒得吐槽了..... 两个方法都不一样. 为什么你会认为输出一定要一样?
2017-09-14 18:09:52 +08:00
回复了 petelin 创建的主题 问与答 请教数据库建立索引
@mm163 我举个例子吧, 如果有 100 万个 status 为 0 的记录, 有一条 stattus 为 1 的记录, 那么查找 status 为 1 的记录能不能直接命中呢? 如果能的话, 那性能提升就很明显.
2017-09-04 17:39:13 +08:00
回复了 rogwan 创建的主题 Python Python3 写入中文(utf-8)到文本,还是会出现乱码?
乱码贴出来看看
2017-08-22 20:43:51 +08:00
回复了 hiboshi 创建的主题 问与答 Python 如何实现这样的数据结构
In [73]: for k,g in groupby(aa, lambda x:x['id']):
...: tmp[k] = '|'.join([item['txt'] for item in list(g)]) + '|'
2017-08-22 20:29:26 +08:00
回复了 hiboshi 创建的主题 问与答 Python 如何实现这样的数据结构
In [22]: for item in aa:
...: tmp[item['id']]= tmp.get(item['id'], '') + item['txt'] + '|'
2017-08-16 15:23:49 +08:00
回复了 petelin 创建的主题 Python 有什么好办法约束一个函数的执行时间吗?
@lolizeppelin 不行。
2017-08-15 14:43:00 +08:00
回复了 petelin 创建的主题 Python 有什么好办法约束一个函数的执行时间吗?
```
def run_with_limited_time(func, args, kwargs, time):
"""Runs a function with time limit
:param func: The function to run
:param args: The functions args, given as tuple
:param kwargs: The functions keywords, given as dict
:param time: The time limit in seconds
:return: True if the function ended successfully. False if it was terminated.
"""
def wrapper(queue, func, *args, **kwargs):
return queue.put(func(*args, **kwargs))
import multiprocessing
q = multiprocessing.Queue(maxsize=1)
func = functools.partial(wrapper, q, func)
p = Process(target=func, args=args, kwargs=kwargs)
p.start()
p.join(time)
if p.is_alive():
p.terminate()
raise TimeoutError('time out!')

return q.get_nowait()
```

看起来是最好的实现了
2017-08-15 13:54:29 +08:00
回复了 petelin 创建的主题 Python 有什么好办法约束一个函数的执行时间吗?
@HarveyDent 比如有一句 sleep(10), 这句话没法再被拆分了.
2017-08-14 19:38:51 +08:00
回复了 petelin 创建的主题 Python 有什么好办法约束一个函数的执行时间吗?
创建主题时描述错了,为看到的 v 友说声抱歉, Process 和 Thread 说的乱七八糟的, 已改正.
2017-08-11 16:19:05 +08:00
回复了 just1 创建的主题 程序员 多线程读写文件的问题
正好遇到类似的问题, 我发现写日志的时候, 多进程并没有出现问题, 原来写小于 PIPE_BUF 是原子的.

http://me.xrange.top/2017/mutiprocess_append_1_file.html
@jiage8866 你能帮我下一个吗?
小米 红米 Note4X 全网通版 4GB+64GB 浅蓝色 移动联通电信 4G 手机 ,蓝色的才有 https://item.jd.com/4325123.html#crumb-wrap
@jiage8866 好,看他方不方便加微信,也谢谢你啦
@disklight 我微信 petelin1120,方便加下吗?
2017-07-09 18:49:45 +08:00
回复了 petelin 创建的主题 数学 只需要保证小数点后两位计算正确, 用 float 有问题吗?
@petelin Python 下浮点数都是用双精度存的,所以精度会高一点, 这个时候 99999999999999.99 就开始不精确了
In [38]: 99999999999999.99 + 99999999999999.99
Out[38]: 199999999999999.97

我觉得如果你的系统任何一处能算到这么大的数, 那就不能用了, 如果没有的还是可以的用的, 0.1d 在怎么加,只要小数点后两位也没什么问题.

ps: 都是个人直觉...实际工作还是存分吧, 或者老大说怎么搞就怎么搞 :)
2017-07-09 18:41:55 +08:00
回复了 petelin 创建的主题 数学 只需要保证小数点后两位计算正确, 用 float 有问题吗?
@BigBearWatchYou 试了一下是 1000000.0, 这样的话在 java 里肯定不能用了. 现在比较好奇为什么 python 对浮点数处理这么好,
In [29]: Decimal(float(99999.99))
Out[29]: Decimal('99999.990000000005238689482212066650390625')
误差都很小的, 包括上面一位同学给出的 C 代码, 在 python 下精度也很高.我去搜搜
2017-07-09 18:38:17 +08:00
回复了 petelin 创建的主题 数学 只需要保证小数点后两位计算正确, 用 float 有问题吗?
确实是存金额, 老大不让用分.........
2017-07-09 18:37:51 +08:00
回复了 petelin 创建的主题 数学 只需要保证小数点后两位计算正确, 用 float 有问题吗?
@zoudm 为什么这个误差这么大, 我用 python 实验的时候, `sum(0.1 for i in range(100000))` 结果是 10000.000000018848, 我觉得可以接受啊
2017-07-07 17:34:28 +08:00
回复了 petelin 创建的主题 数学 只需要保证小数点后两位计算正确, 用 float 有问题吗?
加一个条件, 参加计算的小数,标度最大为 2, 也就是说不会有 0.001 这种
1 ... 22  23  24  25  26  27  28  29  30  31 ... 36  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2678 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 22ms · UTC 15:29 · PVG 23:29 · LAX 08:29 · JFK 11:29
Developed with CodeLauncher
♥ Do have faith in what you're doing.