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

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

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

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

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

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

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

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

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

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

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

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

    win上编译有时候挺麻烦的,pip确实不好用。
    上面那个网页集合了各种常用库的编译版,用到啥弄一个就是了。
    Kabie
    Kabie
    Aug 17, 2014
    63
    ...你总不会写一次程序就全部重装一次吧
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   3970 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 174ms · UTC 01:04 · PVG 09:04 · LAX 17:04 · JFK 20:04
    ♥ Do have faith in what you're doing.