V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dioxide
V2EX  ›  程序员

以 JavaScript 为出发点,什么姿势学习 Python 最省力?

  •  
  •   dioxide · 2019-12-10 21:25:16 +08:00 · 2961 次点击
    这是一个创建于 1794 天前的主题,其中的信息可能已经有所发展或是发生改变。

    或者具体说那本书或教程?

    相对于其他主流语言,从语言特性认同方面来说,JavaScript 算是最相似的么?

    其实,我是想找《写给 JavaScript 程序员的 Python 教程》,有值得推荐的么?

    第 1 条附言  ·  2019-12-10 23:39:46 +08:00
    还有一个连带问题 : 如果日常开发中,JavaScript 与 Python 两种语言都在用的话, 会存在概念混淆的情况么? 有的话能到什么程度?
    24 条回复    2019-12-11 18:46:59 +08:00
    shintendo
        1
    shintendo  
       2019-12-10 21:31:25 +08:00   ❤️ 3
    我觉得写 js 舒服多了……
    secondwtq
        2
    secondwtq  
       2019-12-10 21:31:52 +08:00   ❤️ 1
    照楼主这种想法,挑出 12 种主流语言,能写 144 篇教程,服务不同群体…
    感觉突然找到了人生的意义呢
    mcfog
        3
    mcfog  
       2019-12-10 21:37:56 +08:00 via Android
    @secondwtq 数学老师哭晕在厕所
    Aruforce
        4
    Aruforce  
       2019-12-10 21:41:59 +08:00 via Android
    @secondwtq 12 * 11 啊
    shintendo
        5
    shintendo  
       2019-12-10 21:48:27 +08:00
    我以前有过这个想法,做一个教程网站,选择你要学的语言,再选择一种你掌握的语言,啪,系统给你 diff 出一篇教程来
    crella
        6
    crella  
       2019-12-10 21:48:34 +08:00 via Android
    @secondwtq 如果是给 c#程序员的 vb.net 教程,说明用 dnspy 看 ir 中间码互转就行(抖机灵)
    dioxide
        7
    dioxide  
    OP
       2019-12-10 21:49:47 +08:00
    @secondwtq 所以,这正好是个写作主题啊
    crella
        8
    crella  
       2019-12-10 21:49:56 +08:00 via Android
    是 IL 中间码。话说有 py 和 js 互转的程序吗,能完成一般语法的就可以。
    NeoChen
        9
    NeoChen  
       2019-12-10 21:51:18 +08:00 via iPhone
    不懂如何省力,多实践不就好了,一定要跟其他语言连起来学么?
    dioxide
        10
    dioxide  
    OP
       2019-12-10 21:51:37 +08:00
    @shintendo , 好“人性化”的想法
    secondwtq
        11
    secondwtq  
       2019-12-10 21:53:34 +08:00
    @Aruforce 某些语言始终致力于重新定义自身,作为半个 C++程序员,我认为 12*12 是必要的
    dioxide
        12
    dioxide  
    OP
       2019-12-10 21:55:18 +08:00
    @NeoChen, 实践是要的,我是觉得对比着学,学特性,学重点,印象会更深,同时可以和 JS 的知识点串连起来。
    dioxide
        14
    dioxide  
    OP
       2019-12-10 22:29:57 +08:00
    3q, blog 也不错,订了
    ClericPy
        15
    ClericPy  
       2019-12-10 23:55:19 +08:00   ❤️ 1
    尽量别看那种给 XX 程序员准备的 XX 语言教程

    语言就是个工具, 却不仅仅是个工具. 就像要学习一门自然语言, 除了学其语法, 更要知其深邃, 不了解它的文化, 那和一个机翻有什么区别. 学一门语言, 最能收益的其实是它的设计思想, 至少我每多学一门语言, 就会被那个语言里的设计思路给惊道, 总在想它们怎么被想到的, 人类智慧太神奇了, 比如 goroutine 的方式利用多核, async await 的方式解决困扰十几年的异步编程, erlang 的并发实现, rust 无 GC, jvm 解决跨平台, nodeJS 全局单线程异步 (虽然前面提到的大部分语言我都不行... 但是看它的设计的时候真的感到受益匪浅, 几乎都是为了解决当时最迫切问题而诞生的)

    学语言最好的就是看它的官方文档, 何况 python 还有中文文档了. 具体模块可以看看 realpython 系列, 以前总结过 https://clericpy.github.io/blog/posts/20191027113439/ 教程, 不过对有其他语言基础的人来说, 最佳时间还是: 阅读优秀源码, 看不懂的参考官方文档.

    言尽于此, 欢迎掌握当前最值得的两门语言: javascript + python
    ClericPy
        16
    ClericPy  
       2019-12-10 23:58:05 +08:00
    前面提到机翻, 确实有 js <-> py 的一些库, 表义语法互转还真挺多...
    secondwtq
        17
    secondwtq  
       2019-12-11 00:42:16 +08:00   ❤️ 1
    @ClericPy
    NodeJS 的异步思路根源来自 OS 的中断机制
    Golang 的并发来源于 CSP (Communicating Sequential Processes)
    Rust 的内存管理可以看作是 Substructural Type System 和 Region based memory management 的结合
    async/await 是 CPS 变换
    GC 和 JIT 之类 LISP 就有了,VM 这东西 Smalltalk 就做得不错了
    以上大多数对于足够强大的语言来说就是一个库。

    Erlang 不熟悉,不过大概算是新东西比较多的
    secondwtq
        18
    secondwtq  
       2019-12-11 00:50:22 +08:00
    @crella C# 程序员一般不需要看 VB.NET 吧 ...
    不过 VB.NET 转 C# 估计光看 IL 互转是真的不行 ...
    就别说 F#, C++/CLI 之类乱七八糟的和 C# 三者之间基本没可转移性了
    IL 就是个下限 ...
    agdhole
        19
    agdhole  
       2019-12-11 01:29:15 +08:00
    花了几十分钟查了下 python api 就去写爬虫了
    gramyang
        20
    gramyang  
       2019-12-11 07:02:42 +08:00 via Android
    学脚本语言最终还是要落到 c++,所以学 c++吧
    zjsxwc
        21
    zjsxwc  
       2019-12-11 08:37:15 +08:00
    同感 js 比 python 好多了
    ClericPy
        22
    ClericPy  
       2019-12-11 09:06:39 +08:00
    @secondwtq #17 感谢解惑, 除了 golang 在刷酷壳时候大体知道是怎么来的, 其他的起源我都不知道是怎么来的, 只大致知道这些优秀语言诞生的时候都是为了解决一个特定问题, 顺便再问下 Actor 和 Future 那些概念应该检索什么词呢, 以前搜 Actor 搜到一些演员的文章..... 有没有讲这些语言诞生背景的书 /文章啊, 类似数学之美那样浅显易懂深入浅出的
    chenqh
        23
    chenqh  
       2019-12-11 09:49:33 +08:00
    javascript 找工作可比 py 好多了
    Kp0n
        24
    Kp0n  
       2019-12-11 18:46:59 +08:00
    @secondwtq
    @mcfog
    哈哈哈,看到你两的忍不住笑了。12 * 11 / 2 = 66
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5370 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 07:15 · PVG 15:15 · LAX 23:15 · JFK 02:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.