推荐学习书目
› 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
gzxultra
V2EX  ›  Python

请问 Python 能用来编写桌面应用么

  •  
  •   gzxultra · Jun 20, 2015 · 17506 views
    This topic created in 4156 days ago, the information mentioned may be changed or developed.

    刚开始学,目前看着the hard way learn python
    接下来学校有个网络课设,大概要做出一个类似QQ的通讯软件(聊天,传文件,发图片...)
    要在OS X下做出这个应用需要学哪些知识呢?
    请给出学习路线(界面,框架...)

    32 replies  •  2015-07-07 07:47:47 +08:00
    undeflife
    undeflife
    Jun 20, 2015
    1
    GUI的话可选tk、qt 或者wxWidgets
    tk比较丑 但是简单
    qt有自己的UI
    wxWidgets则是使用平台原生
    janxin
    janxin
    Jun 20, 2015
    2
    pyqt/pyside,qt系的
    kivy,没用过....
    tk,wxWidgets都是老牌的了

    知识建议网络通讯,socket等等,图形界面编程,消息驱动等等等等...
    terax
    terax
    Jun 20, 2015
    3
    难道不是Learn Python the Hard Way吗?
    garth
    garth
    Jun 20, 2015
    4
    可以试试aauto
    zjqzxc
    zjqzxc
    Jun 20, 2015
    5
    能,而且正在写。。用的tk(简单,简单到不能再简单了,最重要的是,跨平台方便)。但是,真的好丑。如果不需要特别精致的界面,tk还是一个不错的选择
    chengzhoukun
    chengzhoukun
    Jun 20, 2015 via Android
    6
    只用过自带的Tkinter,非常方便
    squid157
    squid157
    Jun 20, 2015
    7
    说Tk难看的,估计都不是OS X系统吧。。OS X下面Tk还比较良心。至少我是这么觉得。。
    cchange
    cchange
    Jun 20, 2015
    8
    http://www.v2ex.com/t/84734#reply32 很巧 我也提了这个问题
    secondwtq
    secondwtq
    Jun 21, 2015
    9
    学校会接受 OS X 的作业么?

    我其实有 Windows 桌面程序的需求,原因是要做一些小工具。现在比较火的快速开发框架,Python,node-webkit 之类,都有一个问题,就是如果在一般用户的机器上面跑,我是不用指望那边有 Runtime 的。偏偏这俩货的 Runtime 都臃肿的一比。

    OS X 倒还好些,起码预装了 Python,Ruby etc. 不过我看到这个东西,第一反应是 PyObjC... Tk 据说还可以,没用过,但是 Git 自带一个 GUI 工具,切到一个 repo 目录下面运行 gitk 就能看见了... 你可以看看那货源码,我只能表示涨姿势了,我觉得弄出这么一个工具来,这个框架还凑合。
    gzxultra
    gzxultra
    OP
    Jun 21, 2015
    10
    @terax 咳咳咳,不要在意这个@-@
    gzxultra
    gzxultra
    OP
    Jun 21, 2015
    11
    @undeflife @janxin 谢谢推荐,今天刷完入门书就去试试!
    fortunezhang
    fortunezhang
    Jun 21, 2015
    12
    dropbox 就是用的python 。 安装的话建议用这个: http://stackoverflow.com/questions/29158999/py2exe-generate-single-installer-file
    jimzhong
    jimzhong
    Jun 21, 2015
    13
    可以,用GTK写过,但是移植到windows下就变得很丑了。
    nightv2
    nightv2
    Jun 21, 2015
    14
    @secondwtq pyinstaller感觉制作exe比较好
    Yien
    Yien
    Jun 21, 2015 via iPhone
    15
    make
    Tink
    Tink
    Jun 21, 2015
    16
    QT
    Yinz
    Yinz
    Jun 21, 2015
    17
    @nightv2 我试过用pyinstaller打包出来的去win报错“此文件的版本与正在运行的Windows版本不兼容”
    请问有头绪吗?
    AndersQ
    AndersQ
    Jun 21, 2015
    18
    当然可以,但是Python是解释型语言,这意味着:
    1)用Python开发出的GUI桌面程序性能肯定要比原生编译出来的程序要差一些;
    2)部署的时候,你必须要带上一大堆Python运行时相关的文件。

    Python标准库中就有TKinter,但是功能比较弱,推荐有PyQt/PySide/wxPython/PyGTK等等
    em70
    em70
    Jun 21, 2015
    19
    不要指望用一个语言打遍天下,每个领域都有垄断性的工具,都应该掌握
    jsq2627
    jsq2627
    PRO
    Jun 21, 2015
    20
    如果仅仅是为了完成作业,建议学习用 ObjC (Cocoa)/C++ (Qt) 写原生应用,不会很复杂。
    HowardMei
    HowardMei
    Jun 21, 2015
    21
    要想漂亮,可以考虑用enaml (没到1.0版,文档不够新),支持PyQT/PySide和CSS定义控件
    http://nucleic.github.io/enaml/docs/examples/ex_gradient_push_button.html
    rundis
    rundis
    Jun 21, 2015
    22
    要做桌面程序的话,直接用visual c#,强行一波拖拉无脑做出gui
    wshcdr
    wshcdr
    Jun 21, 2015
    23
    用wxPython吧
    wolong
    wolong
    Jun 21, 2015
    24
    桌面程序还是C#方便快捷。
    ivenvd
    ivenvd
    Jun 21, 2015
    25
    呃,大部分 Linux 桌面应用(尤其 GNOME)都是 Python 写的吧?
    linux40
    linux40
    Jun 22, 2015 via Android
    26
    没叫用图形啊
    fxbird
    fxbird
    Jun 22, 2015
    27
    要做桌面还是用.net吧,还是那个方便,我曾经用java swing开发过桌面程序,从OO的角度说,它很完美,但从实用的角度讲,简直是渣,开发起来那叫一个累啊
    wizardforcel
    wizardforcel
    Jun 22, 2015 via Android
    28
    tkinter不仅丑 设置长宽的时候也别扭。
    staticor
    staticor
    Jun 22, 2015
    29
    我是无意在quora中看到一个问题中, 回想起些许与此问题有关, 所以转link http://www.quora.com/Is-it-true-that-Python-is-a-dying-language
    参考下Adam的回答.
    WispZhan
    WispZhan
    Jun 23, 2015
    30
    我没有用python开发过桌面应用的经验。个人感觉,可以是可以,但是总感觉开发效率不如其他平台。

    windows下开发效率明显低于wpf,linux下直接Qt感觉更快。甚至于半残的javaFX应该比它的效率高。
    Clarencep
    Clarencep
    Jun 23, 2015
    31
    歪个楼,这么喜欢用python,不如搞个类似[WebQQ][http://web.qq.com/]的web应用,直接用浏览器访问……这也是QQ
    guiqiqi
    guiqiqi
    Jul 7, 2015 via Android
    32
    @wizardforcel ttk就能好些吧
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2395 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 85ms · UTC 11:14 · PVG 19:14 · LAX 03:14 · JFK 06:14
    ♥ Do have faith in what you're doing.