V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
shyrock
V2EX  ›  Python

用 VC 花 5 小时写个程序,用 python 只需要 1 小时,但是,你要花 4 个小时安装 python 用到的库以及解决各种安装问题。。。

  •  
  •   shyrock · 2014-08-13 13:05:58 +08:00 · 15654 次点击
    这是一个创建于 3029 天前的主题,其中的信息可能已经有所发展或是发生改变。
    特别是启动一个完全不同类型的项目时,各种环境问题真让人抓狂。
    对了,我是在win64上,linux是不是没这问题?
    第 1 条附言  ·  2014-08-13 14:08:03 +08:00
    看到很多人以为我在吐槽python,挺冤枉的,其实我特喜欢python,感觉很优雅很有效率,就是安装包的松散管理导致很多跨平台、跨字符集时长期存在导致无法运行的严重bug存在,对新人来说坑太多。。。有触到敏感神经的请轻拍。
    63 条回复    2014-08-17 16:58:17 +08:00
    hellojinjie
        1
    hellojinjie  
       2014-08-13 13:07:25 +08:00   ❤️ 2
    应该是你对 python 不熟悉吧,python 依赖几分钟就可以搞定的事啊
    Cynic222
        2
    Cynic222  
       2014-08-13 13:07:31 +08:00
    是的
    ushuz
        3
    ushuz  
       2014-08-13 13:09:27 +08:00
    请了解下 virtualenv
    lincanbin
        4
    lincanbin  
       2014-08-13 13:15:23 +08:00
    最近写了几千行Python,快把我写吐了,Python不成熟的地方太多了。
    shyrock
        5
    shyrock  
    OP
       2014-08-13 13:20:03 +08:00
    我在写第一个scrapy程序,各种安装完成后,运行第一个demo就提示“ImportError: Error loading object 'scrapy.core.downloader.handlers.s3.S3DownloadHandler': No module named win32api”,看overflow上说要装pywin32,但是pip打死装不上pywin32.
    这是要我找个exe来安装的意思?
    Smartype
        6
    Smartype  
       2014-08-13 13:20:46 +08:00
    @lincanbin 好奇都是些什么地方呢?Python 有没有抱怨啊?
    sandtears
        7
    sandtears  
       2014-08-13 13:24:27 +08:00 via Android
    windows 用什么 pip ,除非 requests 这种比较应用层的东西,稍微和系统有点打交道的,比如 pygtk,pyqt,我都是去下安装包的。
    ddzz
        8
    ddzz  
       2014-08-13 13:25:35 +08:00
    你还没在windows上折腾过rails
    ddzz
        9
    ddzz  
       2014-08-13 13:26:41 +08:00
    python对windows平台上的支持还是可以的,如果pip install安装不了可以下载exe文件进行安装 https://pypi.python.org/pypi
    ritksm
        10
    ritksm  
       2014-08-13 13:27:13 +08:00
    Windows下写Python不装个cygwin...然后来吐槽Python和VC...钓鱼么
    loading
        11
    loading  
       2014-08-13 13:37:34 +08:00 via Android
    用 easy_setup 挺好的
    maemual
        12
    maemual  
       2014-08-13 13:42:25 +08:00
    看了标题本来想进来吐槽一下题主对python不熟来着,进来一看到win64我就默默的不说啥了。
    shyrock
        13
    shyrock  
    OP
       2014-08-13 13:42:44 +08:00
    @sandtears 这就是复杂的地方了啊,没有一个统一的插件市场或者仓库完全靠搜索
    est
        14
    est  
       2014-08-13 13:44:15 +08:00   ❤️ 3
    呵呵。windows。
    crazycookie
        15
    crazycookie  
       2014-08-13 13:45:03 +08:00
    看到win64 我觉得 这就正常了 在linux 下面也就3分钟的事情
    可能一个shell脚本就解决了,py都不用写
    shyrock
        16
    shyrock  
    OP
       2014-08-13 13:46:55 +08:00
    @ritksm 别误会,我虽然最熟悉VC,但是真心感觉python优雅好用。。。就是环境问题。。。
    ehs2013
        17
    ehs2013  
       2014-08-13 13:47:33 +08:00   ❤️ 4
    learnshare
        18
    learnshare  
       2014-08-13 13:48:25 +08:00
    装 VS 不也要几个小时?
    notedit
        19
    notedit  
       2014-08-13 13:54:45 +08:00
    @shyrock 是你不熟悉python的问题 配个环境几分钟的事情吧
    shyrock
        20
    shyrock  
    OP
       2014-08-13 13:56:28 +08:00
    @learnshare 是的,不过只需要一次。
    shyrock
        21
    shyrock  
    OP
       2014-08-13 13:58:34 +08:00
    @notedit 如果一切顺利的话,用pip确实只需要分分钟。但是根据我不多的几次经验,遇到各种安装包bug、缺文件、缺语言设置、缺编译环境等等问题动辄小时计。
    bigzhu
        22
    bigzhu  
       2014-08-13 13:58:39 +08:00
    用windows,呵呵.还是用c#吧.

    python好无辜的赶紧
    lecher
        23
    lecher  
       2014-08-13 14:03:36 +08:00
    这个算法明显不对。开发环境的搭建是一次性消费掉的。不可能每次开发都要花那么长时间去配环境。
    按这个算法,vc开发20个小时的工作,放python上面,是不是5+4个小时就解决了?
    吐槽的槽点不对啊!
    notedit
        24
    notedit  
       2014-08-13 14:10:15 +08:00
    @shyrock 没在 windows 上用过 python,可以想象的是因为路径环境问题导致各种依赖错误

    这个是 windows 的问题,你用其他的语言大概也会遇到。
    multiple1902
        25
    multiple1902  
       2014-08-13 14:14:56 +08:00
    @notedit 我理解差不多也是这样的。

    我见到的情况是,Python 很多包不是纯 Python 代码,也就是说里面有 .c 的源代码需要在机器上编译。比如在 Linux 上用 pip 之类安装,就会按照里面的说明调用 gcc 来编译它们。没有 gcc 的话,这个过程是会出错的。

    如果这个过程没有专门为 Windows 设计,那很难想象这个编译过程可以正常完成(用什么编译器?去哪儿调用?)。这么看 Linux 确实没这个问题,但我不觉得这是系统本身的问题。这个主要是软件打包的问题。
    shyrock
        26
    shyrock  
    OP
       2014-08-13 14:16:29 +08:00
    @notedit windows上用VC、C#什么的肯定没问题,js跑在浏览器里面也没问题,WSH也没遇到环境问题。。。其他lua、ruby没用过,就用了python。你要说是python的windows支持问题,我觉得靠谱。
    shyrock
        27
    shyrock  
    OP
       2014-08-13 14:17:13 +08:00
    @multiple1902 同意,缺乏统一的软件包管理。
    bombless
        28
    bombless  
       2014-08-13 14:18:28 +08:00
    这个场景是虚构出来的吧…还VC…
    shyrock
        29
    shyrock  
    OP
       2014-08-13 14:20:32 +08:00
    @bombless 是啊是啊,VC老古董了,居然还要更新C++ 14呢。。。
    est
        30
    est  
       2014-08-13 14:24:23 +08:00
    用windows的耗时得从向财务部门申请正版Visual Studio/Windows Server经费和MSDN下载安装开始算时间。比一比谁快呢。

    你把编译好的release exe跟python脚本源码tar包比部署效率,比个毛啊。pyinstaller打包成exe不一样的效率么。
    shyrock
        31
    shyrock  
    OP
       2014-08-13 14:28:26 +08:00
    @est 这位同学。。。没人在说执行效率,在说环境安装的效率。。。
    multiple1902
        32
    multiple1902  
       2014-08-13 14:29:17 +08:00
    @est 可以用不要钱的 Visual Studio Express。此外 Windows 上的 SDK 也是不要钱的。

    之前在某公司,用 Linux 上某终端复用器(开发时用的系统没有预装),需要提交法务部门检查授权并且登记,避免用了授权不明的工具导致污染源代码。也需要时间。

    流程只是流程而已。
    ioth
        33
    ioth  
       2014-08-13 14:51:32 +08:00
    那用powerbuilder或者vfp吧。
    或者vb
    seki
        34
    seki  
       2014-08-13 15:17:07 +08:00
    win下的python还好,如果是ruby那叫一个抓狂
    taobeier
        35
    taobeier  
       2014-08-13 15:18:03 +08:00
    那只是因为你不熟悉!我从没遇到需要那么长时间的.....

    不过 听朋友说装VC 2012 之类的就装了三四个小时吧
    hahastudio
        36
    hahastudio  
       2014-08-13 15:27:37 +08:00
    还是跟熟悉不熟悉有关= =
    我以前在 VS 上装 OpenGL 还装了老半天呢
    把 DLL 放到指定目录,它就是找不到
    最后逼得我重装了 VS= =
    guotie
        37
    guotie  
       2014-08-13 16:34:14 +08:00
    golang

    不用谢
    404neko
        38
    404neko  
       2014-08-13 16:50:56 +08:00
    那是因为你太弱了
    zonyitoo
        39
    zonyitoo  
       2014-08-13 17:40:15 +08:00
    那是因为你不熟悉,我从来没试过配环境要配那么久。
    我用Linux和OS X
    mutoulbj
        40
    mutoulbj  
       2014-08-13 17:46:48 +08:00
    pip -r requirements.txt
    mathgl
        41
    mathgl  
       2014-08-13 17:46:52 +08:00   ❤️ 1
    动态语言里面,对windows最不歧视的就是python了。
    Comdex
        42
    Comdex  
       2014-08-13 17:49:42 +08:00
    golang棒棒的
    mengskysama
        43
    mengskysama  
       2014-08-13 18:52:33 +08:00
    照你这样说c++里面依赖库的编译有时候还得折腾几天算什么。64位系统装32位py就行了,64有些包不能用。
    sarices
        44
    sarices  
       2014-08-13 18:56:53 +08:00
    感觉包管理是nodejs最好了
    yakczh
        45
    yakczh  
       2014-08-13 19:04:50 +08:00
    包管理应该分全局和本地项目,一般较底层的,稳定的放到全局,上层应用,更新频繁的放在项目本地目录下,这样比较合理
    proudzhu
        46
    proudzhu  
       2014-08-13 19:09:44 +08:00
    win64 能用 VC ?
    multiple1902
        47
    multiple1902  
       2014-08-13 19:11:24 +08:00
    @mathgl JavaScript 呢?
    clowwindy
        48
    clowwindy  
       2014-08-13 19:30:16 +08:00 via Android   ❤️ 1
    python 是 unix 脚本语言。
    siteshen
        49
    siteshen  
       2014-08-13 19:37:58 +08:00   ❤️ 1
    歪个楼,明显楼主在赞python啊。
    下一个项目的额外4个小时就能用来做爱做的事了。
    thinker3
        50
    thinker3  
       2014-08-13 20:02:36 +08:00
    我在windows上装过scrapy,你造吗?
    fox000002
        51
    fox000002  
       2014-08-13 20:06:26 +08:00 via Android
    不想折腾,就上linux或mac osx。windows 上搞巨硬自家之外的东西都得折腾。
    no13bus
        52
    no13bus  
       2014-08-13 20:58:28 +08:00
    @shyrock 记着python一定要在linux下面开发。不然光是安装一些库就能打击你的信心。实在不行,就在win7下面安装虚拟机
    banbanchs
        53
    banbanchs  
       2014-08-13 21:16:01 +08:00
    好像在win下用c/c++的库也挺麻烦的...还是linux方便
    mathgl
        54
    mathgl  
       2014-08-14 01:53:23 +08:00   ❤️ 1
    @multiple1902

    js不是太清楚。平时主要写前端多。和os的交互没用过。

    python这几年我同时为windows & linux开发程序。最大的感受是py 70%的库都可以跨平台,极少需要移植。 "battery included" 这个称号我觉得当之无愧。
    Narcissu5
        55
    Narcissu5  
       2014-08-14 09:12:44 +08:00
    楼上的同学啊vc不等于vc6啊,vs2013带的都到12了啊。你们喷一样东西之前能不能对这东西有点起码的了解啊~
    mengzhuo
        56
    mengzhuo  
       2014-08-14 09:14:08 +08:00
    ╮(╯▽╰)╭我写的库从来不考虑神马Windows
    reverland
        57
    reverland  
       2014-08-14 10:53:29 +08:00
    说句不好听的,让你用windows……
    Sin
        58
    Sin  
       2014-08-14 12:21:23 +08:00
    亲,你跑过 ruby 吗?
    工作必须用 win,请轻拍……
    shyrock
        59
    shyrock  
    OP
       2014-08-14 13:49:06 +08:00
    @siteshen 终于来个明白人。。。
    shyrock
        60
    shyrock  
    OP
       2014-08-14 13:49:40 +08:00
    @thinker3 我就是刚刚装scrapy遇到几个问题。。。
    VYSE
        61
    VYSE  
       2014-08-14 20:43:31 +08:00 via Android
    装个VS2008 EXPRESS就能直接编译了,跟LINUX下没太大使用区别
    fy
        62
    fy  
       2014-08-16 13:50:19 +08:00   ❤️ 1
    给卤煮一个神器:
    http://www.lfd.uci.edu/~gohlke/pythonlibs/

    win上编译有时候挺麻烦的,pip确实不好用。
    上面那个网页集合了各种常用库的编译版,用到啥弄一个就是了。
    Kabie
        63
    Kabie  
       2014-08-17 16:58:17 +08:00
    ...你总不会写一次程序就全部重装一次吧
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1191 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 21:29 · PVG 05:29 · LAX 13:29 · JFK 16:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.