V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  futursolo  ›  全部回复第 1 页 / 共 11 页
回复总数  218
1  2  3  4  5  6  7  8  9  10 ... 11  
2015-04-20 09:28:11 +08:00
回复了 Cee 创建的主题 iDev Objective-C Prefixes: A Thing of the Past?
写Objective-C的菊苣

(~ ̄▽ ̄)ノ

Python小白看着你...
Tornado(知乎就是基于这个Web Framework的)的主动式文件缓存和异步操作起到了很大的作用。
知乎应该是缓存静态文件的,但是动态页面并不缓存。
你打开Chrome的开发者工具之后再刷新知乎的页面,可以看到静态内容几乎全都是304。
2015-04-19 14:37:20 +08:00
回复了 davidlau 创建的主题 程序员 有什么语言支持:多个异步调用方法,按命令式顺序写?
Node.js: Promise
Python(Tornado based Application): Future(Use with yield)
Go: goroutine
2015-04-18 19:13:39 +08:00
回复了 lixia625 创建的主题 Python 求问, jinjia2 逆向的遍历
如果你指的是字典(Dict),那么应该没有顺序(顺序是随机的,正反向都无所谓).
如果你指的是列表,可以这样操作:
for item in (list[::-1])

如果你指的是有序字典,那么这样操作:
for item in (list(dict.keys())[::-1])
2015-04-18 09:10:55 +08:00
回复了 napretep 创建的主题 Python 如何用 python 计算十亿内的素数总和?
使用生成器可以避免上面所说的内存不够用的情况。

这里给一个例子:(V2EX会把代码中的空格自动删掉,请自己补全)

import math
import time


def is_prime(number):
if number > 1:
if number == 2:
return True
if number % 2 == 0:
return False
for current in range(3, int(math.sqrt(number) + 1), 2):
if number % current == 0:
return False
return True
return False


def get_primes(number):
while True:
if is_prime(number):
yield number
number += 1

start = time.time()

prime = get_primes(1)
prime_sum = 0
while True:
this_prime = next(prime)
if this_prime <= 1000000:#改一下这里的数字
prime_sum += this_prime
else:
break
print("Result:" + str(prime_sum))
print ("Finished! Time Used: " + str(time.time() - start) + "s.")

至于楼上所说的筛法算素数的问题,可能也需要比较大的内存
(你还是要把已经算出来的素数保存起来,在这里暂时不用了)

这个是Python3的代码,Python2请自己改一下。

要想算的快一点,可以使用PyPy3。
Tornado 的话应该使用异步驱动程序Motor,而不是同步驱动程序PyMongo。

https://motor.readthedocs.org/en/stable/

使用Tornado的话,请牢记异步优先的准则。
@clino
真的是...
没想到GitHub也会用Flash...
GitHub怎么可以直接复制内容到剪切板的?(页面右侧的项目git clone 地址)
2015-04-17 15:12:07 +08:00
回复了 ivanchou 创建的主题 问与答 现在主流是用 c++ 还是 c# 开发客户端啊
@bestsanmao ShadowSocks for Windows
2015-04-16 14:27:38 +08:00
回复了 laike9m 创建的主题 Python Fabric 竟然还不支持 Python 3
Gevent 也支持Python3好么。。。
pip install cython
pip install git+git://github.com/surfly/gevent.git#egg=gevent
(两个写到一句pip里可能会无法安装,请分开装)

其实最想要的是那个PIL图像库的Python3支持。。。
2015-04-16 14:21:39 +08:00
回复了 jamesarch 创建的主题 问与答 学完 Python 简明教程,该学啥?
@jamesarch
唉,Programmer的英语不能差成这个样子。。。

Tornado是一个Python的Web框架(就像Django之类的那种,但是比Django轻量级),
使用异步(asynchronous)非阻塞(non-blocking)的逻辑(Logic)来处理整个Web请求。
异步的逻辑比较难懂,一开始也觉得异步逻辑很反人类,久而久之就知道这东西多么好了。

由于是异步的,所以所有的同步的Python库(Library)全都要重写(或者用异步的逻辑进行包裹,就是wrap)才能支持异步,否则还是同步(synchronous)。

最后就是随便拿过一个同步库来你就能顺手写成异步库,之后你就成神了。

编辑器的话,付不起Money的话,可以试试Atom(由GitHub编写),也支持楼上的autopep8。

学编程可以,但是前提是你要English没问题!
否则到了后期你去查Docs的时候全是英语的,你怎么办。。。

PS:偶是可爱的男孩子,热爱二次元,你还有什么问题?!
2015-04-16 12:01:00 +08:00
回复了 jamesarch 创建的主题 问与答 学完 Python 简明教程,该学啥?
写写Tornado,见识一下异步非阻塞的魅力。写一个小Web程序,把Tornado的逻辑搞懂(强制自己全部异步),然后自己动手将一个同步的Library转换成(或者wrap成)一个asynchronous的Library。
你就成神了。

表示会了异步逻辑之后,再看到他们那些用同步写Web的人心里就有一种暗爽的感觉(*'▽')!
2015-04-16 10:54:46 +08:00
回复了 ipconfiger 创建的主题 分享创造 让 tornado 的异步任务更加轻松
@futursolo 突然发现自己手滑打错了,应该是futures。。。
2015-04-16 10:47:31 +08:00
回复了 ipconfiger 创建的主题 分享创造 让 tornado 的异步任务更加轻松
@ipconfiger
1. 没事,偶都是3.2.5 +的
2. Python2 执行·pip install features·就可以安装features。。。(你没看括号里的内容吗。。。)
3. Callback is deprecated, simply call and yield its Future. -- From Motor
2015-04-16 10:14:30 +08:00
回复了 ipconfiger 创建的主题 分享创造 让 tornado 的异步任务更加轻松
你这个和tornado自带的tornado.concurrent.run_on_executor以及return_future的方法有什么区别?
2015-04-13 08:42:03 +08:00
回复了 sneezry 创建的主题 分享发现 我滴个妈呀,这都是啥呀,多大的勇气
为何有一种Google+的感觉。。。
2015-04-13 07:55:42 +08:00
回复了 DotKu 创建的主题 V2EX V2EX 基本上都交给 Google 去搜了?!
如果你不会上谷歌,那么也不应该会上V2EX。
因为,在天朝,这两个网站都不存在。
2015-04-13 07:53:26 +08:00
回复了 sneezry 创建的主题 分享创造 送给被别人戳屏幕而困扰的人
Windows 8触屏超极本的路过
2015-04-11 15:16:43 +08:00
回复了 whistle 创建的主题 Python google 抛弃 python 开发了 go,是不是说 python 没前途了?
@skydiver
好吧,这次的下载解压完大小99.1M...(5.6.7)
编译完再看就变成好几百了。。。'
关于Facebook,如果你真的不信,那好吧,上链接!

https://zh-tw.facebook.com/careers/department?dept=infrastructure&req=a0IA000000G3SwnMAF
Ability to code really well in at least one of the following languages: Python, PHP, Ruby, Perl, C, C++ or Java
Ability to rapidly learn new development languages (Python and C are in heavy use on this team)

https://zh-tw.facebook.com/careers/department?dept=it&req=a0I1200000G48ulEAB
Ability to rapidly learn new development languages (PHP, Python, C++, and Java are all in heavy use)
1  2  3  4  5  6  7  8  9  10 ... 11  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3441 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 32ms · UTC 11:17 · PVG 19:17 · LAX 03:17 · JFK 06:17
Developed with CodeLauncher
♥ Do have faith in what you're doing.