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

业余爱好感觉学 Python 学的很迷茫

  •  
  •   kevinguoCN ·
    kevinguocn · Feb 12, 2020 · 9729 views
    This topic created in 2461 days ago, the information mentioned may be changed or developed.

    感觉现在 python 学了 web,学了 AI,学了数据分析。 Django,TensorFlow,Numpy matplotlib 这些库都用过,不是科班出身 对着网上的例子敲也能敲出来,遇到小问题也能解决。 但是学到现在,越学越迷茫。可能是没有把 python 运用到生活中,可能我的专业跟编程确实关系不是很大。所以现在觉得没有什么好的点子去做。编程只能变成了一项技术 而没有成为我解决问题的能力。

    60 replies  •  2020-02-21 22:56:58 +08:00
    CallMeReznov
    CallMeReznov
    Feb 12, 2020❤️11
    1
    考了驾照,你得去当司机才有钱赚.
    noqwerty
    noqwerty
    Feb 12, 2020 via Android❤️7
    2
    说实话没有实际问题要解决能学下来这么多你已经很厉害了
    QingXuJiaZhi
    QingXuJiaZhi
    Feb 12, 2020❤️2
    3
    其实吧,大多数人日常生活中都用不到编程技术,实在有需要,多数情况下也可以通过直接下载别人做好的 app 来解决。

    如果你不打算以此为职业,如果你对编程还是有兴趣,那么,你现在这个阶段可以开始尝试做一些小作品了。

    至于做什么小作品,多想想,多找找,这个思考过程也很重要。就像一个学生,就算已经学了组词造句、写作文,但每次作文下笔前思考要写什么内容也很重要。
    szx300
    szx300
    Feb 12, 2020 via iPhone❤️1
    4
    怎么学的?我也准备自学 python !
    WinG
    WinG
    Feb 12, 2020
    5
    最近 pandas,sklearn 玩的不亦乐乎,试试让生活中的每一件事都与学到的东西发生联系,一定有好玩的发现,慢慢就找到“事”做了。
    robertredd
    robertredd
    Feb 12, 2020 via Android
    6
    做个自己的项目?
    black11black
    black11black
    Feb 12, 2020
    7
    严重赞同 2L
    crella
    crella
    Feb 12, 2020 via Android❤️1
    8
    楼主不妨改进一下 octave,我觉得现在的 octave 还是太难用了。


    顺便求问有展开多项式的工具吗,比如-x(x-1)^2+3*(x^2-x+1)^3,这种多项式,完全展开,我想了一下,需要符号运算而自己没学过
    xmoiduts
    xmoiduts
    Feb 12, 2020 via Android
    9
    @crella sympy 可以吗?
    yishidixia
    yishidixia
    Feb 12, 2020❤️1
    10
    一切的技术都基于业务场景,脱离了业务场景谈技术就是刷流氓
    NonClockworkChen
    NonClockworkChen
    Feb 12, 2020
    11
    有效的产品=编程+商业模式+产品需求。
    xingheng
    xingheng
    Feb 12, 2020
    12
    写爬虫啊,把所有主流网站的数据爬一遍,这需求就来了,过程中不断重构,经验就有了
    helionzzz
    helionzzz
    Feb 12, 2020
    13
    现在一般人 PY 的应用无非就是数据处理和爬虫,你看看能不能把某一样和你的需求联系起来
    noqwerty
    noqwerty
    Feb 12, 2020 via Android
    14
    另外一个我能想到的需求是把一部分 R 里面 tidyverse 的函数迁到 pandas 上面
    justfortest
    justfortest
    Feb 12, 2020
    15
    确实一般都没什么编程需求,当作业余爱好玩玩就好,也许你可以尝试用 python 控制一些硬件之类的,这样实用些。
    retanoj
    retanoj
    Feb 12, 2020
    16
    说到底,还是得“找点事儿做”
    crella
    crella
    Feb 12, 2020 via Android
    17
    所以问 sympy 怎么分解多项式,百度搜不到,必应搜 poly... expand python 也看不出来,直升机没油了
    learnshare
    learnshare
    Feb 12, 2020
    19
    1. 定一个小目标,然后边学边写
    2. 过半年再重写一下
    3. 重复前两步
    JerryCha
    JerryCha
    Feb 12, 2020
    20
    建议把 leetcode 刷个遍,不然很容易失去目标与性质
    JerryCha
    JerryCha
    Feb 12, 2020
    21
    *兴致
    freed
    freed
    Feb 12, 2020
    22
    和我差不多,这种一般都是目标驱动..不是从事这个工作或者没有什么目标的话....

    丢一段时间就忘得差不多了..........
    chochox
    chochox
    Feb 12, 2020
    23
    你得选一个你最喜欢做的,可以跟着开源项目一起做,把自己学的东西应用起来,慢慢越来越深入,你就可以创造更大的价值
    37Y37
    37Y37
    Feb 12, 2020❤️1
    25
    确实要解决实际问题,看楼主这技能树已经点的很齐全了,想一些实际的例子去实现,解决一些实际问题,无论是对所学的东西,还是自身的成就感都很有帮助

    两个简单的小例子,都是我学习 python 的时候干过的

    第一个是当年投资的时候写的小工具,爬数据,简单分析,推送微信群、公众号这样,文章写的并不好,思路可以参考下: https://ops-coffee.cn/s/YhKyJ16yuI0bPpygKV_d1w

    另一个就是折腾博客,生成静态文件,自动上传 github,利用 github page 实现的现在的这个博客,跟很多现有的博客系统实现方式不一样,不断完善,满足自己需要: https://ops-coffee.cn/s/7g2wncQG1lIziOmtBxXwEw

    还有就是想了想自己的工作环境,写了一堆辅助的工具系统: https://ops-coffee.cn/devops

    其实仔细想想应该有很多地方可以用得到,最简单的如果你对记账感兴趣写个记账程序也行,或者把你感兴趣的内容写个爬虫爬取下来做个聚合站或者 app 小程序什么的都行,定一个小目标,动手做,都会有收获
    eq06
    eq06
    Feb 12, 2020
    26
    没有把 python 运用到生活中 ,主要是你生活中没有把任何一件事情做到极致。
    wangyzj
    wangyzj
    Feb 12, 2020
    27
    你还没刷过题吧
    给你一个新坑
    Hoshizora
    Hoshizora
    Feb 12, 2020 via Android
    28
    写爬虫
    v2vTZ
    v2vTZ
    Feb 12, 2020 via iPhone
    29
    没有需求,创造需求啊!
    zfish
    zfish
    Feb 12, 2020 via iPhone
    30
    给自己定个目标,比如搭建一个独立博客以及尤其衍生出来的一系列需求都可以锻炼你开发技能的,比如博客的 push 推送,rss 转邮件,博客 api 开发之类
    PostMeridiem18
    PostMeridiem18
    Feb 12, 2020
    31
    嗯...技多不压身?
    kevinguoCN
    kevinguoCN
    OP
    Feb 12, 2020
    32
    @noqwerty 可能以前上中学的时候就对编程很感兴趣,觉得能写代码很酷。 但是上大学家里不同意报计算机,所以就搁置了。大学我所有的计算机课几乎满分,自己学了 php python,也自己折腾过网站。 但是现在感觉没什么更深入的需求了。
    kevinguoCN
    kevinguoCN
    OP
    Feb 12, 2020
    33
    @robertredd 有个自己的博客 www.kevinguo.cn 感谢宣传。。
    crella
    crella
    Feb 12, 2020
    34
    @siteshen
    @ipwx 还好刚学过泰勒展开式。想到一个办法,对给定函数不断赋值并求导,如果重复第几次的时候求导为 0,就说明这个函数最高具有几次方幂,然后按泰勒公式的思路去做,慢慢模拟各个幂的乘数项。
    SaltyLeo
    SaltyLeo
    Feb 12, 2020
    35
    就是得有一个长远的目标才会有动力学习,这是我最近开始做的一个小项目: https://t.me/i_book_in,TGbot 基本上没有大的 bug 了,下一步就是重构 web 端。
    kevinguoCN
    kevinguoCN
    OP
    Feb 12, 2020
    36
    @wangyzj 非计算机专业 没必要刷题吧。ahhh
    SaltyLeo
    SaltyLeo
    Feb 12, 2020
    37
    ipwx
    ipwx
    Feb 12, 2020
    38
    @crella 你这什么奇怪的思路。

    如果你都能数值求导了,说明你的符号计算系统很完善,为啥不直接把多项式展开化简。你说数值计算高次导数?摆脱这无差距大吧。。。还有,SymPy 里面展开叫做 expand,这不是随便查一下文档就知道的事情么。

    当然,一般用 WolframAlpha 它不香么,还要开 Python。

    https://docs.sympy.org/latest/tutorial/simplification.html#expand
    fengfisher3
    fengfisher3
    Feb 12, 2020
    39
    举个例子,用 python 炒股?
    kevinguoCN
    kevinguoCN
    OP
    Feb 12, 2020
    40
    @fengfisher3 量化投资? 最近在学金融的知识。但是这个对专业性要求比较高。
    SteveAlan
    SteveAlan
    Feb 12, 2020
    41
    现在不是疫情吗。做点统计分析也不错,maybe~
    QingXuJiaZhi
    QingXuJiaZhi
    Feb 12, 2020❤️1
    43
    @kevinguoCN 楼主看一下这个我用 PyQT 做的密码管理器有没有兴趣 https://github.com/ahui2016/PyMima

    这个项目我已经停止开发,但是非常适合你拿来练手,你看看如果有兴趣请告诉我,我给你一些已经想好的 todo 和参考资料(比如云备份功能),你可以 fork 过去继续开发(采用 GPL 许可)。
    storypanda
    storypanda
    Feb 12, 2020
    44
    我之前在广州找工作的时候做着新闻更新兼职,自学爬虫,最后想写 sympy,然后开发 Mac app,结果找工作焦虑,没最后完成,感兴趣可以看看我的博客 广漂日记和 Python 相关文章,欢迎交流。

    广漂日记: https://felixxiong.github.io/categories/%E5%9F%8E%E6%BC%82/%E5%B9%BF%E6%BC%82%E6%97%A5%E8%AE%B0/

    编程开发-python: https://felixxiong.github.io/categories/%E7%BC%96%E7%A8%8B%E5%BC%80%E5%8F%91/Python/
    graycreate
    graycreate
    Feb 12, 2020 via Android
    45
    寻找需要解决的问题
    1nakaELYBbsXbZxY
    1nakaELYBbsXbZxY
    Feb 12, 2020
    46
    楼上说的都挺对的
    hmxxmh
    hmxxmh
    Feb 12, 2020 via Android
    47
    非常同意二楼
    fengfisher3
    fengfisher3
    Feb 12, 2020
    48
    @kevinguoCN 反正不是主业,慢慢来嘛。
    kblexel
    kblexel
    Feb 12, 2020
    49
    二楼说的不错,你已经很厉害了。。。作为业余爱好整体看到网上鼓吹学编程的言论(虽然一大部分下面都会有个广告链接),我研究了半天也没搞明白学会到底能解决我什么问题,所以一直没有坚持下来,每次心血来潮看了一两节课的视频就放弃了。 。。但我相信这种思维模式和多一个技能总是没有坏处的
    s1E4GnZ4A2qGRyva
    s1E4GnZ4A2qGRyva
    Feb 12, 2020
    50
    多用中文命名变量吧。
    国内开源项目的不可持续性之我见: https://zhuanlan.zhihu.com/p/100182186
    对了,已经有了 python api 汉化项目: https://zhuanlan.zhihu.com/p/102811665
    cosven
    cosven
    Feb 12, 2020❤️1
    51
    如果楼主是想练练手,感受一下编程语言在日常生活中的应用,欢迎加入 FeelUOwn 项目开发: https://github.com/feeluown/FeelUOwn

    简介一下:这是个音乐播放的项目,活了 5 年了,目前有几个友善小伙伴一起开发、交流。

    技术上使用 Python 3 + PyQt5,有很多有挑战的技术点,举几个例子

    简单的词法分析器: https://github.com/feeluown/FeelUOwn/blob/master/fuocore/protocol/lexer.py
    实现一个 asyncio.Protocol: https://github.com/feeluown/FeelUOwn/blob/master/fuocore/protocol/server_protocol.py
    实现一个 Python 描述器: https://github.com/feeluown/FeelUOwn/blob/master/fuocore/models.py#L80
    Python 元类的使用场景: https://github.com/feeluown/FeelUOwn/blob/master/fuocore/models.py#L97
    pyqt Signal/Slot 机制实现: https://github.com/feeluown/FeelUOwn/blob/master/fuocore/dispatch.py
    手写 thread based tcp server: https://github.com/feeluown/FeelUOwn/blob/master/fuocore/thread_tcp_server.py
    简单爬虫: https://github.com/feeluown/feeluown-netease/blob/master/fuo_netease/api.py

    欢迎加入 ~
    mouyase
    mouyase
    Feb 13, 2020 via Android
    52
    没有需求,创造需求也要做
    raawaa
    raawaa
    Feb 13, 2020
    53
    python 我也很迷茫,最迷茫的是,难道 python 至今没有一个方便一点的依赖包管理系统吗,比如像 npm 这样的。
    crella
    crella
    Feb 13, 2020
    54
    @ipwx 额额,正在学高数,顺便了解一下怎么模拟一些数学运算过程也是挺好的。

    写了 200 行代码,结果还算可以。不会用符号计算,都是用加减乘除搞出来的,到处 eval

    比如我的代码中,

    SaryExpand.parse '(x**2-x+1)**3'

    # 理想结果是= x^6-3x^5+6x^4-7x^3+6x^2-3x+1,

    程序结果是= f(x) = 1.0 * x**6 - 3.0 * x**5 + 6.018 * x**4 - 7.054 * x**3 + 6.058 * x**2 - 3.036 * x + 1.01

    再比如

    SaryExpand.parse '-x*(x-1)**2+3*(x**2-x+1)**3'

    # 理想结果是= 3x^6-9x^5+18x^4-22x^3+20x^2-10x+3,

    程序结果是= f(x) = 3.0 * x**6 - 9.0 * x**5 + 18.054 * x**4 - 22.161 * x**3 + 20.174 * x**2 - 10.108 * x + 3.026

    写代码的过程感觉还是挺有意思的。可能有些强迫症吧,不想什么都靠工具来搞

    在代码里,增大迫近函数的定义域,同时减小散点横坐标 x 的步长,发现各个乘数的值越来越接近理想值。这也算是意外收获吧,毕竟我数学比较差。

    后面调整定义域和步长,得到

    f(x) = 3.0 * x**6 - 9.0 * x**5 + 18.006 * x**4 - 22.015 * x**3 + 20.011 * x**2 - 10.004 * x + 3.0
    shimmerh
    shimmerh
    Feb 13, 2020
    55
    老哥,你程序是代替人工的,你首先需要定义一个生活工作中的问题,然后去用技术解决。这样才有乐趣。
    justfortest
    justfortest
    Feb 14, 2020
    56
    @cosven 以前用过,还可以,要是有以前的精力和时间我也尝试参与开发了。
    learningman
    learningman
    Feb 14, 2020
    57
    @raawaa pypi 啊。。。。
    learningman
    learningman
    Feb 14, 2020
    58
    @crella 出门左转 matlab
    cosven
    cosven
    Feb 15, 2020
    59
    @justfortest 如果是工作了,时间确实会非常少。
    storypanda
    storypanda
    Feb 21, 2020 via Android
    60
    楼主可以看看我的博客
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1645 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 95ms · UTC 08:17 · PVG 16:17 · LAX 00:17 · JFK 03:17
    ♥ Do have faith in what you're doing.