跟“风云卫星”数据工程师学Python
文章平均质量分 63
专栏内容涵盖语法学习、模块精讲、“Python语感训练”的概念和方法。后续将增加2D/3D应用开发、数据处理等内容。
优惠券已抵扣
余额抵扣
还需支付
¥19.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
天元浪子
齐国土著,太公之后。少小离家,独闯江湖,后归隐于CSDN部落格。素以编写python代码为业,偶尔游戏于各网络对局室,擅长送财送分,深为众棋友所喜闻乐见。
展开
-
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你原创 2019-11-13 18:16:52 · 373718 阅读 · 330 评论 -
Python语法的“一五一十”
简单、优雅,是 Python 的哲学理念,因而 Python 的语法,相对其它语言来说,也是非常得简洁明了。归纳起来,可以用12345和一个10来概括Python的基础语法。初学者只要理解掌握了这“一五一十”,就可以登堂入室了。,想要继续深入了解Python的语言特性,请参考本文的姊妹篇——《Python十大装B语法》原创 2019-11-27 17:18:07 · 26343 阅读 · 8 评论 -
Python 内置函数详解
Python 的内置函数数量众多,功能强大,如果能够灵活运用,必将极大地提高编程效率。不过,在大家公认的所谓内置函数里面,有很多并不是真的函数,而是内置类,只是因为使用起来和真正的函数没有什么不同,所以也就约定俗成地统称为内置函数了。比如,我们常说的类型转换函数 int()、str()、float() 等,都是类,而 print()、sorted() 等才是真正地函数。原创 2019-11-26 17:14:53 · 13124 阅读 · 8 评论 -
pip 工具使用指南
pip 是 Python 目前最流行、最方便的包管理工具。早期的 pythoneer 使用 setup.py 安装模块,用起来比较麻烦,所以很多程序员都曾经用过把模块文件直接扔进 python 安装路径下的 Lib\site-packages 文件夹的“暴力”安装法。后来稍微进化了一点,使用 easy_install工具,对应的是.egg模块文件。再后来,终于进化到了 pip 时代,对应的是模块文件也变成.whl文件。原创 2019-11-26 17:15:13 · 9415 阅读 · 8 评论 -
Python 语感训练100题
编程语言虽然不是自然语言,细细琢磨的话,其实在很多方面也是符合传统语言学(linguistics)规律的。比如,编程语言也讲究词汇学(关键字),结构学(程序结构),句法(语法),语义(代码功能)等;在语言的学习方法上,编程语言和自然语言也高度相似。原创 2019-11-26 17:19:06 · 29704 阅读 · 20 评论 -
Python 语感训练100题(参考答案)
说明: Python 语感训练100题中,几乎每一道题都有多种解决方案,这里提供的答案仅供参考。答案陆续更新中。如有疑问,请联系我。原创 2019-11-26 17:16:41 · 19161 阅读 · 23 评论 -
Python 新手入门必学十大模块之一:sys 和 os
在 Python 的内置模块中,sys 和 os 这两个模块都和操作系统有点关系,因此我把这两个模块放在一篇文章里讨论,实际上二者之间几乎没有什么关联关系。sys 是一个和 Python 解释器关系密切的标准库,它和帮助我们访问和 Python 解释器联系紧密的变量和函数。os 模块代表了程序所在的操作系统,主要用于获取程序运行所在操作系统的相关信息。原创 2019-11-26 17:18:25 · 13705 阅读 · 9 评论 -
Python 新手入门必学十大模块之二:time 和 datetime
Python 提供了两个标准模块,用于处理时间和日期,一个是 time,一个是 datetime,二者在应用需求上各有侧重。一般而言,time 模块侧重于解决当前的时间日期问题,比如当前日期,当前时间戳等;datetime 模块则侧重于解决时间轴上的问题,比如,107天又7小时28分钟之前是几月几号几时等。原创 2019-11-26 17:16:17 · 7596 阅读 · 2 评论 -
Python 新手入门必学十大模块之三:math 和 random
math 和 random 是 Python 标准库中常用的两个和数学相关的库。math 模块实现了很多对浮点数的数学运算函数——这些函数一般是对平台 C 库中同名函数的简单封装。random 模块提供了一组随机函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等。原创 2019-12-03 09:56:59 · 9929 阅读 · 13 评论 -
Python 新手入门必学十大模块之四:xlrd 和 xlwt
数据处理是 Python 目前最热门的应用领域之一,excel 是最通用的电子表格,因此使用 python 读写 excel 文件,就成了Python程序员入门必学的基础之一。python 读写 excel 文件的工具有很多,比如,xlrd、xlwt、xlutils、openpyxl 等。其中 xlrd、xlwt 因为诞生较早,应用也相对普遍,本文将介绍这两个模块的使用要点。xlrd 和 xlwt 是第三方模块,需要使用 pip 命令安装原创 2019-11-26 17:17:03 · 8670 阅读 · 4 评论 -
Python 新手入门必学十大模块之五:sqlite3 和 pymysql
作为程序员,无论在哪个领域写bug,数据库是永远不能回避的技术,必须了然于胸、烂熟于心。SQLite,是一款轻型的数据库,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的应用软件之一。sqllite3 是Python 内置的标准模块,原创 2019-11-26 17:17:31 · 9353 阅读 · 2 评论 -
Python 进阶必备:线程模块 threading
对于新手来说,首先要理解线程的概念,以及为什么需要线程编程。什么是线程呢?网上一般是这样定义的:线程(thread)是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。哈哈,你听懂了吗?我觉得这样的定义纯粹是自说自话:新手看完了一脸懵逼,老鸟看完了不以为然。原创 2019-11-13 18:17:31 · 14360 阅读 · 23 评论 -
Python 进阶必备:进程模块 multiprocessing
multiprocessing 是 Python 内置的标准进程模块,可运行于 Unix 和 Windows 平台台上。依赖于该模块,程序员得以充分利用机器上的多核资源。为便于使用,multiprocessing 模块提供了和 threading 线程模块相似 API。针对进程特点,multiprocessing 模块还引入了在 threading 模块中没有的API,比如进程池(Pool)、共享内存(Array 和 Value)等。原创 2019-12-03 16:30:18 · 9481 阅读 · 2 评论 -
Python 进阶必备:图像库 pillow
PIL 是 Python Imaging Library 的简写,意为 Python 图像库。它不是 Python 的标准库,但在很长一段时期内,PIL 几乎就是 Python 的御用图像库。印象中大约是2015年前后(网上检索不到这一段历史),PIL 不再有更新,取而代之的,则是 PIL 的嫡传分支 pillow —— 完全继承了 PIL 的 API,且支持 py3 的图像库。尽管我们在提到图像处理时经常会提到 PIL,但一般情况下是指 pillow。pillow 的官网写着:If you have ev原创 2019-12-05 21:53:35 · 10468 阅读 · 5 评论 -
NumPy入门讲座(1):基本概念
NumPy 是 Python 科学计算的基础软件包,提供多了维数组对象,多种派生对象(掩码数组、矩阵等)以及用于快速操作数组的函数及 API,它包括数学、逻辑、数组形状变换、排序、选择、I/O 、离散傅立叶变换、基本线性代数、基本统计运算、随机模拟等等。原创 2019-12-17 12:02:14 · 12850 阅读 · 9 评论 -
NumPy入门讲座(2):创建数组
一般情况下,科学数据都是海量的、层次关系复杂的,是由数据服务机构提供的,不是我们构造出来的。我们创建数组的目的,很多时候是用来做原型验证和算法验证的。NumPy 为创建数组提供了非常丰富的手段,可以无中生有,可以移花接木,还可以举一反三。配合数据类型设置、结构设置,就可以构造出我们想要的任何形式的数组了。原创 2019-12-18 10:45:56 · 10613 阅读 · 3 评论 -
NumPy入门讲座(3):操作数组
NumPy 数组对象的内容可以通过索引或切片来访问和修改。对于一维数组的索引和切片,NumPy 数组和Python 的列表一样灵活。对于多维数组操作,NumPy 数组比 Python 的列表更加灵活、强大。假设有一栋2层楼,每层楼内的房间都是3行4列,那我们可以用一个三维数组来保存每个房间的居住人数(当然,也可以是房间面积等其他数值信息)。原创 2019-12-18 17:36:54 · 9932 阅读 · 2 评论 -
NumPy入门讲座(4):常用函数
NumPy 用特殊值来表示缺值、空值和无效值。想一想,Python 和 C 语言如何表示数组中的缺值、空值和无效值呢?Python 因为数组元素不受类型限制,可以用 None 或者 False 等表示缺值、空值和无效值。对 C 语言来说,恐怕也只能在数据的值域范围之外,选一个特定值来表示吧?比如,假定数组存储的是学生的成绩,成绩一般都是正值,所以C语言可以用-1表示缺考。在NumPy数组中,因为有了nan和inf这两个特殊值,我们就不用在意数据的值域范围了。原创 2019-12-19 09:43:16 · 10403 阅读 · 0 评论 -
NumPy入门讲座(5):实战演练
前面已经说过,广播和矢量化是 NumPy 最精髓特性,是 NumPy 的灵魂。所谓广播,就是将对数组的操作映射到每个数组元素上;矢量化可以理解为代码中没有显式的循环、索引等。如果用循环结构遍历 NumPy 数组,明显不符合 NumPy 的思想。可以说,使用 Numpy 的最高境界就是避免使用循环。如果代码中存在遍历 NumPy 数组的结构,就不是好的代码,就一定有优化空间。原创 2019-12-22 16:23:02 · 11098 阅读 · 6 评论 -
手把手教你用 wxPython 设计一个可以弹琴的计算器
用 Python 设计桌面程序,首先得选择一个GUI库。至于有哪些库可选,各个库又有什么特点,请参考我的博客《wxPython:python首选的GUI库》。有很多网友对这篇博客的观点,以及引用的材料,提出了不同的看法,甚至是批评。对此,我都一一回应,并对明显的谬误做了修正,对不同的观点也做了追记。萝卜青菜,各有所爱。我喜欢 wxPython,自然会向各位大力推荐,但一定尽可能保持客观中立的立场,...原创 2019-11-14 17:29:11 · 7279 阅读 · 7 评论 -
手把手教你用 tornado 设计 web 项目
全栈工程师,源出于 Full Stack Developer,更准确的翻译应该全栈开发者,是指掌握多种技能、并能利用多种技能独立完成产品的人。据说,配得上这个称号的人不多,Linux 之父雷纳斯(Linus Torvald,简称老雷)算是其中之一,JavaScript 宗师道格拉斯(Douglas Crockford,简称老道)也位列其中。看到他们二位,你是否还有信心成为一名全栈工程师呢?原创 2019-12-10 18:25:11 · 10662 阅读 · 4 评论 -
Python 网络编程入门——用 Socket 做一个风花雪月服务器
理解 TCP/IP,是程序员从初阶到高阶的必由之路。然而,现在的程序员几乎没有多少实战机会接触到网络编程比较底层的部分。究其原因,一方面是因为流行的网络引擎框架提供了很好的封装,另一个原因是应用层面上多以 http/ftp 等协议为主,程序员不需要从 Socket 做起了。原创 2019-11-26 17:13:36 · 7908 阅读 · 4 评论 -
我的 MySQL 客户端:支持 pymysql / mysqlclient 双模块、自动重连、独创事务回滚装饰器
torndb曾经是我非常喜欢使用的一个MySQL客户端,虽然不足300行代码,却支持pymysql/mysqlclient双模块,且能在连接失效时自动重连。torndb的函数封装也很有特色,相同的功能提供了不同的名字。遗憾的是,进入Py3之后,torndb没有相应的升级,只好放弃了。近日,重读了torndb的源码,结合我对数据库应用的理解,整理出了一个新的MySQL客户端,暂且命名为youthd...原创 2020-01-09 16:21:32 · 14263 阅读 · 1 评论 -
剑客之剑——君子剑(Notepad++)
杨过闯入绝情谷救小龙女时,得君子剑和淑女剑二剑。君子剑剑身乌黑,如一段黑木一般,没有半点光泽。此剑无尖无锋,圆头钝边,寒气逼人,锋锐异常。君子剑之风,恰如Notepad++之内敛——它并不华丽,甚至可以说是没有亮点,但用起来却也得心应手、销铁如泥。原创 2019-11-28 13:26:45 · 8788 阅读 · 2 评论 -
剑客之剑——倚天剑(Vim)
武林至尊,宝刀屠龙。号令天下,莫敢不从,倚天不出,谁与争锋。倚天剑和屠龙刀都是玄铁重剑混合西方精金所铸,为当世最锋利的兵刃。编辑器的世界里,也有这样一对绝代双骄,那就是VIM 和 Emacs,被全世界的程序员视为神器。倚天剑为峨嵋派创始祖师郭襄所有,剑内藏有《九阴真经》和《降龙十八掌掌法精义》,堪比武林至尊的屠龙刀。而拥有帝王血统的VIM也不遑多让,完全可与之争锋。原创 2019-11-28 20:40:04 · 9068 阅读 · 4 评论 -
剑客之剑——玄铁重剑(VS Code)
玄铁重剑,是金庸小说笔下第一神剑,持之则无敌于天下。重剑无锋,大巧不工。真正的剑技不是要依靠剑锋,而是个人的修行。VS Code 作为最接近 IDE 的编辑器,抛弃了 IDE 的臃肿,比 Emacs 和 VIM 更简单易用,又像 Emacs 和 VIM 那样拥有大量优秀的插件,可以减轻编写代码的负担,让程序员更加专注于业务逻辑的处理。原创 2019-11-28 14:18:31 · 8658 阅读 · 1 评论 -
剑客之剑系列续篇:六脉神剑——PyCharm使用宝典
前些日子,我在CSDN博客平台上以《剑客之剑》作为系列篇名,一口气分享了三款编辑器的使用体验。这篇三文章分别是:《剑客之剑——君子剑(Notepad++)》、《剑客之剑——倚天剑(Vim)》和《剑客之剑——玄铁重剑(VS Code)》。原计划 PyCharm 是《剑客之剑》系列的第四篇,本想一鼓作气写完的,无奈因短时间内发力过猛,气血不足,无以为继,只好先闭关修炼了两周。今日出关,终于可以继续聊聊PyCharm了。原创 2019-12-11 17:38:45 · 12324 阅读 · 7 评论