编程入门
编程五问:
编程可以自学吗?
毫无疑问编程是可以自学的,而且任何知识的学习,自主学习都是非常重要的途径,编程也不例外。但是就像我们进行九年义务教育一样,学习的过程一定要有“老师”能够帮助你解答问题。当然“老师”可以是你身边的朋友,面对面帮你解惑,也可以是各大编程语言学习QQ群或者一些编程论坛里的“网友”。
既然可以自学编程,那么我们可以通过哪些途径学习编程呢?
学习编程的基础
掌握任何一门学科都是需要一些具备基础知识做铺垫的,编程也不例外。而编程的基础就是要求学习者具备正常的思维逻辑,即问题拆分能力,能把一个大的问题分解为若干个小的问题, 解决了小的问题,大的问题就解决了,这种问题拆分方法也被称之为分而治之的思考方法。例如:烧水做饭
1.锅里倒上水,加入大米2.打开火
3.等待并确认饭被煮熟
什么是编程语言?
如果把计算机看作一个人,那么编程语言就是你和计算机对话的语言。实际上,计算机根本听不懂你说话,它所理解的只是“1”(高电平)和“0”(低电平)。那么我们通过(高级)编程语言编写程序,在经过计算器转译器,将程序转换成1、0机器能识别的高低电平,就能通过编程去操作我们的计算机执行自动化任务。
编程的核心是什么?
"编程"的核心就是我们为了完成某项任务, 将解决问题的步骤, 用计算机能够理解的语言写成指令, 而后, 计算机会根据这些指令一步步执行, 最后完成任务。整个过可以拆分成以下三个步骤:
理论上只需要3个基本结构就可以实现任何计算任务:顺序、条件判断和跳转。
第一种是顺序结构,依次执行分解后的解决方案就 可以得到最终的解决方案。顺序执行是最基本的整合逻辑,它为程序的编写奠定了基础。
第二种是条件判断结构,意思是需要根据执行时的实际情况判断是执行 方案A还是执行方案B,这个看起来极其简单的判断逻辑事实上是程序展现出千变万化 的核心所在。例如账户成功登陆需要判断你输入的密码是否正确,你输入的验证码是否正确。
第三种循环结构,它可以让我们将一个方案重复执行若干次,而不是在程序中将这个方案复制若干次。例如,当需要我们编写程序实现猴子吃香蕉的任务时,可以看到使用朴素的顺序整合与循环整合的区别:
为什么选择Python?
最新的编程语言排名:
主流语言趋势图
环境搭建
学Python3.X还是Python2.X?
Python2已经不维护了,Python3才是未来。学哪个版本不言自明了。
Python安装
我的mac电脑,直接官网下载Python安装包即可。
Download Python | Python.org
IDE工具推荐
Pycharm
网上很多安装教程,随手找了一个仅供参考:
Mac 系统下安装 PyCharm 的实践_BruceHelloWorld的博客
- ✅创建py文件代码模版,这个模版的作用是自动给自己写的代码加一个“商标”, 效果如下:
设置方式:Preferences -> Editor -> File and Code Templates,选择Python Script,将以下模版内容粘贴,点击 ok 即可。模版:
#!/usr/bin/env python# -*- coding: utf-8 -*-
# @Time : ${DATE} ${TIME}
# @Author : 软件质量保障
# @File : ${NAME}.py
# @desc :
- ✅设置Pycharm样式
Preferences -> Appearance & Behavior -> Appearance
Preferences -> Editor -> Color Scheme
为什么需要创建项目?就像包工程盖房子一样,建筑一座大厦就是一项项目。完成这个项目需要人力、建筑材料、机器,通常项目管理人员会将各种建筑资源分门别类,这样有利于快速统计哪种资源紧缺。设想一下,如果建筑工地将各种建筑资源乱堆一起,则很难统计当前各种资源的使用情况。
同理,编程项目也是如此,完成一个大型项目通常是有很多“资源”协力完成,要学会使用“项目”管理这些代码资源,这样做的一个好处是,可以将一些代码抽象成脚手架,可以在其他项目中引用,避免重复造轮子。如下就是创建了一个House项目,这个项目又分了很对子模块,如果现在你要创建一个搬砖工,则在“搬砖工”文件夹下创建一个Py文件即可。
Python的基础概念
行和缩进
python 最具特色的就是用缩进来写模块。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。
如下代码会执行错误,IDE编译器会提示你格式错误:
Python引号
Python 可以使用引号( ' )、双引号( " )、三引号( ''' 或 """ ) 来表示字符串,引号的开始与结束必须是相同类型的。其中三引号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释。
Python注释
附录
编程语言排行榜:index | TIOBE - The Software Quality Company