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
Satan4869
V2EX  ›  Python

本来想学 Python 的,无奈不得已放弃

  •  
  •   Satan4869 · 2016-09-26 19:29:53 +08:00 · 12366 次点击
    这是一个创建于 2145 天前的主题,其中的信息可能已经有所发展或是发生改变。
    折腾了一天……
    安装了 Python3.5 ,熟悉了 IDLE ,写了个 Hello word ……
    也用过 Pycharm-edu,感觉这个不错。

    但是感觉不能像 Delphi 那样很简单的打包成 exe 程序。
    同时,如果要开发图形界面的软件,也感觉不简单。

    搞了一下午,就在琢磨怎么生成 exe 程序。
    百度, Goolge ,各种论坛,基本上没有教程。
    折腾几个生成 exe 的包,结果没有一个用成了,本来想学个新语言,看来起步就得放弃了。

    脚本语言就是脚本语言啊,我去……只是觉得语法和结构看起来很容易学的样子
    不学了,懒得折腾。
    第 1 条附言  ·  2016-09-27 01:56:35 +08:00

    感谢楼下网友们的回复,不管是嘲讽还是建议,都非常感谢。

    其实这个帖子呢,也确实是因为遇到了问题发出来的抱怨,因为学习Python也有几天了,然后今天居然为了生成Win下的应用程序而苦恼了半天,然而半天过去之后依然没有解决问题,有点气急败坏了。

    我会用心学习的,也会改正自己以后发帖的态度,起码不应该参入情绪的变量,让网友们见笑。

    #再次感谢留下建议和解决办法的网友们,你们真的很友爱。#

    112 条回复    2016-09-28 21:39:23 +08:00
    1  2  
    mikicomo
        1
    mikicomo  
       2016-09-26 19:38:26 +08:00
    我想听听二楼怎么说....
    likai
        2
    likai  
       2016-09-26 19:39:59 +08:00
    我想听听三楼怎么说.图形界面可以理解,为什么一定要 EXE 呢?
    liqingcan
        3
    liqingcan  
       2016-09-26 19:40:53 +08:00
    我主要用 java 但是写一些小脚本用 python 还是很好用的,很快
    至于你说的打包成 exe 和界面没搞过,不懂
    megatron
        4
    megatron  
       2016-09-26 19:41:40 +08:00   ❤️ 1
    三楼认为他 /她在钓鱼。铜币请收好。
    lelsetsuna
        5
    lelsetsuna  
       2016-09-26 19:42:00 +08:00   ❤️ 1
    万物皆基于 EXE ,手动滑稽
    Satan4869
        6
    Satan4869  
    OP
       2016-09-26 19:45:29 +08:00   ❤️ 1
    @megatron 铜币还给你,请善用 block 。

    心都碎了。学个新语言,感觉这么麻烦。
    hosiet
        7
    hosiet  
       2016-09-26 19:52:04 +08:00 via Android
    就一个问题:为啥纠结生成 exe ?没有 exe 就不能用了吗?
    Linux 用户表示手动滑稽
    a87150
        8
    a87150  
       2016-09-26 19:52:31 +08:00
    的确,我上次想用 qt+pyqt+erci 弄个图形界面 exe ,结果折腾了一下午都没弄好。
    megatron
        9
    megatron  
       2016-09-26 19:55:08 +08:00
    @Satan4869 玩笑而已,别介意。
    个人认为 python 最复杂的在面向对象那一部分。我也不明白一开始没有接触过 python ,为什么上来先研究 exe 。
    mooncakejs
        10
    mooncakejs  
       2016-09-26 19:56:52 +08:00
    @megatron python 面向对象其实挺呵呵
    matrix67
        11
    matrix67  
       2016-09-26 19:58:13 +08:00 via Android
    exe 是绿色软件啊,你们不懂~逃
    fiht
        12
    fiht  
       2016-09-26 19:59:20 +08:00
    写了半年了 python 了。没生成过 exe 也没画过 TK ,我是不是挺失败的。。
    wmhx
        13
    wmhx  
       2016-09-26 20:00:13 +08:00   ❤️ 1
    这样一个快捷方式, 算不算 exe ? 至少看起来像 :
    "E:\python27\1.0\pythonw.exe" "E:\launcher\start.py"
    tan90ds
        14
    tan90ds  
       2016-09-26 20:03:34 +08:00
    Python 搞 GUI 都嫌麻烦的话学 C++ 之类的编译型语言的话楼主妥妥会觉得天天对着一个黑乎乎的窗口太智障了
    易语言吧(逃
    M3oM3oBug
        15
    M3oM3oBug  
       2016-09-26 20:06:38 +08:00
    pyinstaller 不管用了吗
    daya
        16
    daya  
       2016-09-26 20:09:20 +08:00 via Android
    用 python 开发 GUI 从来就不是主流,硬要说的话也就 pyqt 稍稍好点
    lll9p
        17
    lll9p  
       2016-09-26 20:09:45 +08:00
    pyinstaller 或者 cx-freeze 啊
    laoyur
        18
    laoyur  
       2016-09-26 20:10:00 +08:00
    我还是排一下五楼吧
    『万物皆基于 EXE ,手动滑稽』
    zoumouse
        19
    zoumouse  
       2016-09-26 20:13:15 +08:00   ❤️ 2
    一群人冷嘲热讽,你们倒是解决楼主问题啊。
    megatron
        20
    megatron  
       2016-09-26 20:14:39 +08:00
    我上次生成 exe ,是在 2013 年的 4 月,用的是 py2exe 。
    wellsc
        21
    wellsc  
       2016-09-26 20:17:58 +08:00 via Android
    用 web 啊
    symons
        22
    symons  
       2016-09-26 20:19:48 +08:00
    生成 exe 还是比较麻烦的,不过为啥要 exe ,.py 不好么
    awolfly9
        23
    awolfly9  
       2016-09-26 20:21:52 +08:00
    不能生成 exe 最大的麻烦就是当需要发给其他人用的时候,如果别人没有 Python 环境,那就运行不了。
    还需要先给别人装环境,不懂得人一听就不想干了。
    我之前也想过折腾 exe ,但是现在没去弄

    @Satan4869 我先用用 pyqt5 做 GUI 还是挺快挺好的
    awolfly9
        24
    awolfly9  
       2016-09-26 20:22:42 +08:00
    vivagonna
        25
    vivagonna  
       2016-09-26 20:33:47 +08:00 via Android
    生成 exe ,说明这个程序是用于 win ,那试试 AutoHotkey 吧,我知道大神们肯定会不屑,但是确实简单啊,基本看几个例子就能写出自己需要的脚本了,图形界面、 exe 通通点几下鼠标搞定
    EXE
        26
    EXE  
       2016-09-26 20:34:22 +08:00   ❤️ 25
    听说你要生成我的包?
    lwhite
        27
    lwhite  
       2016-09-26 20:39:10 +08:00   ❤️ 2
    @Satan4869 这个 python 程序生成 EXE 其实比较简单, PyInstaller 可以轻松将脚本转 exe 。连 pyqt 和 Django 都行。

    装了以后命令行输入
    pyinstaller /path/to/yourscript.py
    就能成功出来一个 exe ,非常简单。

    网址 https://github.com/pyinstaller/pyinstaller

    还有一个也是能打包 exe 的, pynsist 能直接打包一个 windows 的安装包。

    http://pynsist.readthedocs.io/en/latest/

    既然能打包了,你也能继续学 python 了吧。

    题外话,我自己在找 java 转 exe 的方法。有的话请告诉我。
    Patrick95
        28
    Patrick95  
       2016-09-26 20:42:48 +08:00
    想要 exe 为什么不学学 C#呢, VB.NET 也成啊。

    最不济易语言都可以啊。
    xavierskip
        29
    xavierskip  
       2016-09-26 20:52:09 +08:00   ❤️ 3
    GUI application with one line

    Gooey https://github.com/chriskiehl/Gooey
    xavierskip
        30
    xavierskip  
       2016-09-26 20:53:20 +08:00
    Packaging Gooey as a Distributable Application
    http://chriskiehl.com/article/packaging-gooey-with-pyinstaller/
    falcon05
        31
    falcon05  
       2016-09-26 20:54:34 +08:00 via iPhone
    Learning Python, 从还未学习到放弃
    chaichaichai
        32
    chaichaichai  
       2016-09-26 20:55:05 +08:00
    突然发现写了 4 、 5 年的 python 竟然没打包过 exe
    Tink
        33
    Tink  
       2016-09-26 20:56:20 +08:00
    我表示我好像真的没有写过 exe 版的 python 哎。。。
    MaiCong
        34
    MaiCong  
       2016-09-26 20:56:30 +08:00 via iPhone
    hello word. hello docx?
    helloSwift
        35
    helloSwift  
       2016-09-26 20:56:54 +08:00
    搞 exe ,学 C#,学 C++啊
    Jakesoft
        36
    Jakesoft  
       2016-09-26 21:01:07 +08:00 via iPhone   ❤️ 3
    写了几年了 PHP ,发现不能生成 exe,果然是垃圾语言,不写了!
    indooorsman
        37
    indooorsman  
       2016-09-26 21:03:29 +08:00 via Android
    我两年前用 py2.7+qt 做界面打包 exe 似乎很简单啊,半天就搞定了…
    shakespaces
        38
    shakespaces  
       2016-09-26 21:05:41 +08:00 via Android
    EXcuse mE ?
    megatron
        39
    megatron  
       2016-09-26 21:07:39 +08:00   ❤️ 1
    @lwhite launch4j ?
    bdbai
        40
    bdbai  
       2016-09-26 21:08:17 +08:00 via Android
    又要 GUI 又要 exe ,说得难听点,楼主是为了显摆才学 Python ?
    learnshare
        41
    learnshare  
       2016-09-26 21:10:09 +08:00
    Why not 易语言?
    lcc4376
        42
    lcc4376  
       2016-09-26 21:19:33 +08:00
    exe 請用 vc ++ (驚
    LukeEuler
        43
    LukeEuler  
       2016-09-26 21:20:52 +08:00
    骚年,听说过 rust 吗
    xavierskip
        44
    xavierskip  
       2016-09-26 21:23:54 +08:00   ❤️ 4
    一门不改变你思维方式的编程语言,不值得去学。

    Teach Yourself Programming in Ten Years
    http://norvig.com/21-days.html
    ruoyu0088
        45
    ruoyu0088  
       2016-09-26 21:45:02 +08:00
    其实生成 EXE 之后用起来反而麻烦。搞一个 WinPython 便携环境,然后用 bat 启动脚本即可。
    Comdex
        46
    Comdex  
       2016-09-26 21:52:42 +08:00
    java 也可以生成带裁剪版 jvm 的 exe
    XYxe
        47
    XYxe  
       2016-09-26 21:53:38 +08:00
    我用 py2exe 在 Python3.5 下打包一个 PyQt5 的项目也失败了,提示 No such file or directory: 'C:\\Python35\\lib\\site-packages\\py2exe\\run_w-py3.5-win32.exe' 。该怎么解决呢?
    Technetiumer
        48
    Technetiumer  
       2016-09-26 21:56:00 +08:00   ❤️ 1
    写个 bat 呗

    Python 不适合写 GUI ,你应该用 C++ / C#

    推荐 Lazarus ( Object Pascal ),比 VB 好,开源,免费,跨平台
    zhpech
        49
    zhpech  
       2016-09-26 22:00:49 +08:00 via iPhone
    pyinstaller 表示教程很多
    chunqiuyiyu
        50
    chunqiuyiyu  
       2016-09-26 22:08:57 +08:00
    思维方式有误 学什么语言都有问题
    kamen
        51
    kamen  
       2016-09-26 22:15:02 +08:00
    一个软件最主要是完成一个任务,至于有没有 GUI ,编译出来出来是不是 EXE ,这些都不重要。
    现在的语言大都有明确的应用方向,不是所有语言都能出一个 EXE ,就算能也不合适。
    如果你非要出个 EXE ,建议你去学 C#
    Felldeadbird
        52
    Felldeadbird  
       2016-09-26 22:33:19 +08:00   ❤️ 1
    楼主连 PY 打包 exe 都没找到教程,只能说你搜索技术太糟糕了。
    Satan4869
        53
    Satan4869  
    OP
       2016-09-26 22:39:17 +08:00   ❤️ 1
    @Felldeadbird 不,找到了几个教程,都一一尝试了。结果都无法实现,失败了。搜索技术我还是挺自信的,只是实际操作方面,经验是个问题。
    yuankui
        54
    yuankui  
       2016-09-26 22:47:53 +08:00
    楼主应该想想, python 这么难用,还那么多人整天说它好的。。
    那些人都是 SB 吗?
    dtfm
        55
    dtfm  
       2016-09-26 22:49:38 +08:00
    @Satan4869 我之前也遇见这个瓶颈,第一次写 Python 就遇见这么个大坑, https://www.v2ex.com/t/289902#reply20 ,用的还是很罕见的 reg 库,不过好歹解决了,但现在我也忘了怎么解决的了。

    但解决的过程我看还是很享受嘛
    int64ago
        56
    int64ago  
       2016-09-26 23:20:15 +08:00
    这个思维方式很奇特
    mingyun
        57
    mingyun  
       2016-09-26 23:26:18 +08:00
    @Jakesoft 哈哈
    exch4nge
        58
    exch4nge  
       2016-09-26 23:31:24 +08:00
    请问楼主是不是用了 Google 搜索的,或者有没有在 Google 用英语搜索过?
    Adven
        59
    Adven  
       2016-09-26 23:32:21 +08:00
    看了评论,感觉大家真替你捉急!如果是想折腾,那你毅力还真不够!怎么能中途放弃了呢?
    如果是为了达到目的,为啥不开始就使用 C#/C++编程呢?
    lgh
        60
    lgh  
       2016-09-26 23:38:47 +08:00
    基于 Tkinter 写的一个自己的小玩具用 cx_Freeze 生成的 exe 够用了。
    kingddc314
        61
    kingddc314  
       2016-09-26 23:39:08 +08:00 via Android
    Go 语言倒是很容易生成 exe 包,但又没有成熟 GUI 库
    Felldeadbird
        62
    Felldeadbird  
       2016-09-26 23:39:34 +08:00
    不是我说你,好像是今年我才弄了一下 PY ,就花了半天时间去研究 PyInstaller ,当时是做一个基于 PY 动态添加 VPN 的功能。不可能每天电脑都安装 PY ,就搜索了 PyInstaller 打包成 exe 。压根就没啥难度。网上教程一大推。
    http://blog.csdn.net/daniel_ustc/article/details/15501385

    这都搞不懂,我真心怀疑你的能力是否合适做开发呢?
    terence4444
        63
    terence4444  
       2016-09-27 00:02:25 +08:00 via iPad
    @Satan4869 随便一搜都有好多,楼主对自己的搜索技术太自信了。
    justou
        64
    justou  
       2016-09-27 00:15:54 +08:00
    用 python+pyqt 写过不少小工具, 都是图形界面(几乎都有用 qt designer 画控件), 都是用 pyinstaller 打包成 exe 的. 简单一个命令自动打包, 如果想要打的包精简干净去除一些不需要的东西, 需要仔细去研究 pyinstaller 的文档 https://pyinstaller.readthedocs.io/en/stable/,

    我是用了几年 python 后才开始需要打包 exe 的, 写的工具要放到很多没有 python 环境的机器上运行. 入门没必要纠结怎么打包(也没必要), 可能连 pyinstaller 文档都读不下去, 就是 lz 所说的: 经验问题.
    276562578
        65
    276562578  
       2016-09-27 00:18:55 +08:00 via Android
    @indooorsman 用什么生成的?
    WangYanjie
        66
    WangYanjie  
       2016-09-27 00:26:44 +08:00
    那么问题来了, exe 是什么,手动滑稽
    8023
        67
    8023  
       2016-09-27 00:30:10 +08:00 via Android
    我的话, 自个用的程序用 Python 写, 别人要的程序用 qt with c++写...
    coreki
        68
    coreki  
       2016-09-27 00:42:04 +08:00 via iPhone
    楼主用 vc 自己写一个 exe ,然后打包脚步吧 很简单的
    Arnie97
        69
    Arnie97  
       2016-09-27 01:14:27 +08:00 via Android   ❤️ 3
    本来想学锤子的,在二手东挑了把羊角锤,砸了几个钉子。也去楼下五金店看了看别的型号,感觉也不错。

    但是感觉不能像改锥一样拧螺丝钉。

    搞了一下午,就在琢磨怎么用锤子把螺丝拧下来。百度, Goolge ,各种论坛,基本上没有教程。
    换了几个不同直径的螺丝钉,结果没有一个能用锤子拧下来的,本来想学学锤子的,看来起步就得放弃了。

    锤子就是锤子啊,我去……只是觉得锤子的结构看起来很简单的样子。
    不学了,懒得折腾。
    herringcg
        70
    herringcg  
       2016-09-27 01:46:52 +08:00
    @Arnie97 真的笑,笑出声。
    PythonAnswer
        71
    PythonAnswer  
       2016-09-27 02:07:00 +08:00
    经过认真搜索,发现应该学 c 语言,可以变成 exe 。
    Vizogood
        72
    Vizogood  
       2016-09-27 07:30:36 +08:00 via Android
    万物基于 exe (#手动滑稽)
    ispinfx
        73
    ispinfx  
       2016-09-27 08:22:29 +08:00
    你很有想法,跟我学做菜吧。
    braveguywallce
        74
    braveguywallce  
       2016-09-27 08:48:55 +08:00
    大概楼主 windows 下编程已经习惯了,压根不知道 Linux 为何物。
    lszxlong
        75
    lszxlong  
       2016-09-27 08:55:58 +08:00
    写了一年的 python...还没有写过 exe 程序..
    zjqzxc
        76
    zjqzxc  
       2016-09-27 09:07:06 +08:00
    py2exe (打包 exe )+tkinter ( win 下 python 自带的 GUI 库); pip 安装一下 py2exe 直接开始用就行了;

    不知道楼上一帮人嘲讽个什么意思;也许楼主的需求就是给 windows 用户开发一个小的 GUI 程序呢,非得考虑 osx 和 linux 不是自讨苦吃么?
    biaodianfu
        77
    biaodianfu  
       2016-09-27 09:13:42 +08:00
    @wmhx "E:\python27\1.0\pythonw.exe" "E:\launcher\start.py"
    你就不能直接改后缀为.pyw?
    yanzixuan
        78
    yanzixuan  
       2016-09-27 09:18:10 +08:00
    建议你还是在 linux 环境下搞吧。
    搞 GUI ,如果非常熟悉 TK 的话,可以在命令行里就能把界面敲出来。
    对于新手,建议重 pyqt 入手。
    至于你说的障碍,说实话,我在 win 平台下也要折腾一些时间。。。
    21grams
        79
    21grams  
       2016-09-27 09:19:54 +08:00 via Android
    做网站啊,写什么 exe
    async
        80
    async  
       2016-09-27 09:26:22 +08:00
    楼主有 exe 情结,在他看来不能生成 exe 的语言都是辣鸡语言(手动滑稽)
    aaronzjw
        81
    aaronzjw  
       2016-09-27 09:28:57 +08:00
    大写的服
    littleshy
        82
    littleshy  
       2016-09-27 09:40:07 +08:00
    你应该为了需求而选择方便的语言,而不需要跟风去学一门你可能用不上的语言。
    likuku
        83
    likuku  
       2016-09-27 09:45:05 +08:00
    干嘛非要生成 exe .... 干嘛非要折腾 ide ... text sublime / atom 这类高级编辑器足矣
    xvx
        84
    xvx  
       2016-09-27 09:45:34 +08:00
    Python 能做图形界面的好吧……
    就是生成 exe 有巨坑而已。
    其实哪用生成 exe , py 不好么。
    sfscomm
        85
    sfscomm  
       2016-09-27 09:54:34 +08:00
    楼主没说错,就他的需求而言, python 用来搞 exe 来讲本来就算个球?
    Lenbo
        86
    Lenbo  
       2016-09-27 09:55:44 +08:00
    楼主可以了解下 Golang
    lcatt
        87
    lcatt  
       2016-09-27 09:56:20 +08:00
    @xvx PYQT 做界面被.NET 怒甩几条街。。。。 python 主要还是写写小程序
    ldehai
        88
    ldehai  
       2016-09-27 09:59:00 +08:00
    @Satan4869 LZ 别放弃,贡献一个几年前写的一篇介绍打包的: [Python 程序打包成 EXE]( http://ldehai.com/blog/2013/09/22/pyinstaller-matplotlib/)
    Heinz
        89
    Heinz  
       2016-09-27 09:59:36 +08:00 via iPhone
    用什么不好,非要 Python
    Phariel
        90
    Phariel  
       2016-09-27 10:03:15 +08:00 via Android
    exe? Exo me? 类 Unix 哭晕在厕所
    xvx
        91
    xvx  
       2016-09-27 10:05:40 +08:00
    @lcatt 各有优缺点,各取所需而已,没优劣之分。
    geek123
        92
    geek123  
       2016-09-27 10:18:37 +08:00
    @Satan4869 给你推荐个地方保证你有不同的感觉:

    http://www.hubwiz.com/course/?type=Python
    fjzjk
        93
    fjzjk  
       2016-09-27 10:35:19 +08:00
    楼上一大堆人嘲讽............
    生成 exe 说明有这个需求,需要把成品给无 py 环境的人使用。你不能指望像 cocos2dx 那样,叫人家自己去装 py2.7 吧。
    当然做 exe 图形界面的话, c#会更方便一点
    introom
        94
    introom  
       2016-09-27 10:42:19 +08:00 via Android
    不知道楼主对 exe 是什么样的认识,是只要能运行呢?还是普通二进制可执行文件,比如 win 下应该是 pe, nix 下是 elf. 如果是追求 pe,那 python 确实不合适。
    qwer1234asdf
        95
    qwer1234asdf  
       2016-09-27 12:05:42 +08:00 via iPhone
    文都是只用来玩游戏,编程还是利纳斯吧
    touchfish
        96
    touchfish  
       2016-09-27 12:15:21 +08:00
    面向 exe 编程,你们都不懂
    markx
        97
    markx  
       2016-09-27 12:43:41 +08:00
    我有点想知道楼主最后会爱上什么语言。
    gdm
        98
    gdm  
       2016-09-27 13:05:23 +08:00
    Python 环境是有多难呢,自己装个 WinPython ,配上包,再打个压缩包发给别人就行了
    GUI 用 pyqt 也很方便啊
    cszchen
        99
    cszchen  
       2016-09-27 13:09:53 +08:00
    图形用 pt-qt4 ,打包用 py2exe ,刚做程序员的时候做过作弊的签到软件
    cszchen
        100
    cszchen  
       2016-09-27 13:10:25 +08:00
    是 py-qt4
    1  2  
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2755 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 14:40 · PVG 22:40 · LAX 07:40 · JFK 10:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.