Day 1 小白新手上路

⼀、Python编程语⾔介绍

众所周知,Python已成为全球3⼤主流编程语⾔之⼀, 与C、Java并驾⻬驱。与Java, C这两位编程界⼤ 佬⻓期霸屏编程语⾔排⾏榜前列不同的是,Python是近⼏年才异军突起、爬到了前三的位置。活脱脱⼀ 个屌丝逆袭故事。

世界上的编程语⾔有600多种,但真正⼤家主流在使⽤的最多⼆三⼗种,不同的语⾔有⾃⼰的特点和擅 ⻓领域,随着计算机的不断发展,新语⾔在不断诞⽣,也同时有很多⽼旧的语⾔慢慢⽆⼈⽤了。有个权 威的语⾔排名⽹站,可以看到主流的编程语⾔是哪些

*2023年2⽉数据(https://www.tiobe.com/tiobe-index/)

1.1 Python为何能逆袭?

答案:还是因为太优秀了哈哈。

评判⼀个编程语⾔的优劣有多种维度, ⼀般包括“开发效率”、“学习曲线”、“⽣态圈”、"运⾏速度"等, Python在“开发效率”、“学习曲线”、“⽣态圈”这3个维度上可以说是稳拿第⼀了。

开发效率——由于语法简洁明了,⼜有丰富的、现成的各种模块库,开发什么功能都不⽤重新造轮⼦, 直接在前辈的写好的代码基础上扩展即可,⼤⼤提⾼开发效率。

学习曲线——Python算是最适合⼩⽩上⼿的语⾔了。 很多⼈觉得计算机难学,是因为⼀开始就没选对 语⾔,你⼀上来就搞C\C++\Java啥的,那指针呀、链表呀、⾯向对象呀就够你喝⼀壶的。 ⽽学Python 符合⼈性的学习曲线,由简⼊繁,先易后难。

⽣态圈——Python⾃1989年诞⽣⾄今30余年,在IT技术的各个领域⽅向都发展出强⼤的⽣态圈,在⼈ ⼯智能、数据分析、爬⾍开发、游戏开发、⾃动化运维\测试、web开发、后端开发、科学运算、GUI编 程等⽅⾯均全⾯开花,被称为编程界的瑞⼠军⼑、万能语⾔。

运⾏速度——Python 的运⾏速度相⽐C语⾔确实慢很多,跟JAVA相⽐也要慢⼀些,因此这也是很多所谓 的⼤⽜不屑于使⽤Python的主要原因,但其实这⾥所指的运⾏速度慢在⼤多数情况下⽤户是⽆法直接感 知到的,必须借助测试⼯具才能体现出来,⽐如你⽤C运⼀个程序花了0.01s,⽤Python是0.1s,这样C语 ⾔直接⽐Python快了10倍,算是⾮常夸张了,但是你是⽆法直接通过⾁眼感知的,因为⼀个正常⼈所能 感知的时间最⼩单位是0.15-0.4s左右,哈哈。其实在⼤多数情况下Python已经完全可以满⾜你对程序 速度的要求,除⾮你要写对速度要求极⾼的搜索引擎、⽹络游戏等,这种情况下,当然还是建议你⽤C 去实现的。

综上原因,导致Python必⽕⽆疑。

1.2 Python主要应⽤领域

1. WEB开发——最⽕的Python web框架Django, ⽀持异步⾼并发的Tornado框架,短⼩精悍的 flask,bottle, Django官⽅的标语把Django定义为the framework for perfectionist with deadlines(⼤意是⼀个为完全主义者开发的⾼效率web框架)

2. ⽹络编程——⽀持⾼并发的Twisted⽹络框架, py3引⼊的asyncio使异步编程变的⾮常简单

3. 爬⾍——爬⾍领域,Python⼏乎是霸主地位,Scrapy\Request\BeautifuSoap\urllib等,想爬啥就 爬啥

4. 云计算——⽬前最⽕最知名的云计算框架就是OpenStack,Python现在的⽕,很⼤⼀部分就是因为 云计算

5. ⼈⼯智能、数据分析—— Python 是⽬前公认的⼈⼯智能和数据分析领域的必备语⾔

6. ⾃动化运维——问问你认识的每个运维⼈员,运维⼈员必须会的语⾔是什么?10个⼈相信会给你 ⼀个相同的答案,它的名字叫Python。知名的运维⼯具Ansible\Saltstack都是Python写的

7. ⾦融分析——我个⼈之前在⾦融⾏业,10年的时候,我们公司写的好多分析程序、⾼频交易软件 就是⽤的Python,到⽬前,Python是⾦融分析、量化交易领域⾥⽤的最多的语⾔

8. 科学运算—— 97年开始,NASA就在⼤量使⽤Python在进⾏各种复杂的科学运算,随着NumPy, SciPy, Matplotlib, Enthought librarys等众多程序库的开发,使的Python越来越适合于做科学计 算、绘制⾼质量的2D和3D图像。和科学计算领域最流⾏的商业软件Matlab相⽐,Python是⼀⻔ 通⽤的程序设计语⾔,⽐Matlab所采⽤的脚本语⾔的应⽤范围更⼴泛

9. 游戏开发——在⽹络游戏开发中Python也有很多应⽤。⽐如知名的游戏、⽹易公司的《⼤ 话⻄游》 就是⽤Python写的

⼆、安装Python环境

2.0为何要装Python环境 ?

因为你写的代码是⼈类可读的,但计算机是靠电流驱动的,它只认识010100101,我们即将安装的 python环境就是Python解释器,它就像个翻译官,把⼈类代码翻译成机器能读懂的010101⼆进制代 码,这样才能运⾏哈

Python⽬前已⽀持所有主流操作系统,在Linux,Unix,Mac系统上⾃带Python环境,在Windows系统上 需要安装⼀下,超简单

2.1Windows安装Python

打开官⽹ https://www.python.org/downloads/windows/ 下载中⼼

下载后执⾏,点击下⼀步安装就⾏,注意选择添加Python到当前⽤户环境变量

详细安装⽂档请看另一专栏,超细节!!!
2.2 Windows配置环境变量(选做)
如果在安装Python时没选择环境变量,你是没办法在操作系统的任意⽬录调⽤ Python的,必须⼿动把 Python的执⾏程序加到环境变量⾥。
我的Python刚才装到C:\Users\alex\AppData\Local\Programs\Python\Python37 ⽬录下了, 以后每 次执⾏python程序时,还要到这个⽬录下调⽤python.exe这个可执⾏⽂件才⾏。 太麻烦了, 为了⽅便 调⽤,可以配置系统的环境变量,让你的Python可以很容易的被找到。
找到我的计算机,右单击——》属性——》环境变量


windows —> 运⾏ —> 输⼊cmd ,然后回⻋,弹出cmd程序,输⼊python,如果能进⼊交互环境 ,代表 环境变量成功

2.3 Mac 安装
Python ⾸先Mac是⾃带Python的,只要打开终端Terminal输⼊Python即可,但你若想安装最新版本,如下

安装完成后,通过Lunchpad找到Terminal命令⾏终端

输⼊Python3

恭喜你,Python安装成功了
三、写下你的第⼀⾏代码
执⾏Python代码可以通过2种⽅式, ⼀种是在Python交互器⾥直接写, ⼀种是写到⽂件⾥保存执⾏

3.1 ⽤交互器执⾏代码
windows —> 运⾏ —> 输⼊cmd ,然后回⻋,弹出cmd程序,输⼊python, 就进⼊了交互器模式 向屏幕输出⼀⾏⽂字的语法是 print("拓号是你要打印的字,⽤引号包起来")
3.2 代码写在⽂件⾥保存执⾏

四、变量
4.1 什么是变量
变量,是⽤于在内存中存放程序数据的容器
怎么理解这句话呢?
计算机的最核⼼功能就是“计算”, CPU是负责计算的,计算需要数据源,数据源要存在内存⾥,⽐如我 要把Alex的姓名、身⾼、年龄信息存下来,后⾯程序会调⽤,怎么存呢,直接设置⼀个变量名=值,就可以
定义变量
 

name = "lhy"
age = 22
height = 180

后⾯程序想调⽤的时候,直接调 变量名 就可以

name = "lhy"
age = 21
height = 175
print(name) # 调⽤变量
print(age)

4.2 变量的使⽤规则
程序是从上到下依次逐⾏执⾏的,所以变量必须先定义,后调⽤, 否则会报错

4.3 变量的定义规则
1. 在程序全局都会⽤到的变量,尽量定义在⽂件开头
2. 变量名只能是 字⺟、数字或下划线的任意组合,其它形式均不合法
3. 变量名的第⼀个字符不能是数字
4. 以下关键字不要声明为变量名[‘and’, ‘as’, ‘assert’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘exec’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘not’, ‘or’, ‘pass’, ‘print’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’], 这些是Python语法中已经占⽤了的关键字
常⽤变量名定义规范

驼峰体

AgeOfOldboy = 56
NumberOfStudents = 80
c,c#


下划线

age_of_oldboy = 56
lao_nan_hai_de_nianling # 不要这么写
number_of_students = 80

定义变量不好的⽅式
1. ⽤拼⾳、中⽂做变量名
2. 变量名过⻓
3. 不能让⼈通过名字就能看出来是什么意思
4. ⾸字⺟⼤写(⼤写是⽤来定义类名的,后⾯会学)

4.4 变量的修改

⾃⾏看图不解释

五、基本的数据类型

5.1 什么是数据类型?

我们⼈类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强⼤,但从某种⻆ 度上看⼜很傻,除⾮你明确的告诉它,1是数字,“汉”是⽂字,否则它是分不清1和‘汉’的区别的,因此, 在每个编程语⾔⾥都会有⼀个叫数据类型的东东,其实就是对常⽤的各种数据类型进⾏了明确的划分, 你想让计算机进⾏数值运算,你就传数字给它,你想让他处理⽂字,就传字符串类型给他。Python中常 ⽤的数据类型包括多种,今天我们暂只讲4种, 数字、字符串、布尔类型、列表。

5.2 数字类型

int(整型) integer

你存的所有的整数,都是这个类型

可⽤ type() ⽅法来查看

数据类型 float (浮点型) 即⼩数

5.3 字符串

在Python中,加了引号的字符都被认为是字符串!

那单引号、双引号、多引号有什么区别呢? 让我⼤声告诉你,单双引号⽊有任何区别,只有下⾯这种情 况 你需要考虑单双的配合

多引号

多引号什么作⽤呢?作⽤就是多⾏字符串必须⽤多引号

字符串拼接

数字可以进⾏加减乘除等运算,字符串呢?让我⼤声告诉你,也能?what ?是的,但只能进⾏”相 加”和”相乘”运算。

不⽤尝试相减、相除,⾂妾办不到呀。

注意,字符串的拼接只能是双⽅都是字符串,不能跟数字或其它类型拼接

5.4 布尔类型

布尔类型很简单,就两个值 ,⼀个True(真),⼀个False(假), 主要⽤作逻辑判断

但其实你们并不明⽩上⾯这句话什么意思对么? let me explain, 我现在有2个值 , a=3, b=5 , 我说 a>b 你说成⽴么? 我们当然知道不成⽴,但问题是计算机怎么去描述这成不成⽴呢?或者说a < b 是成 ⽴,计算机⼜怎么描述这个公式是成⽴的呢?

没错,答案就是,⽤布尔类型

计算机为什么要描述这种条件呢?因为接下来就可以根据条件结果来⼲不同的事情啦呀!⽐如

5.5 列表(List)

如果要把全班的⼈名在内存⾥存下来,⽤上⾯的字符串类型可以做到,但取的时候不⽅便。

你 print(names) 它打印的是所有⼈的信息,如果想取出Rain,没办法(可以⽤字符串切割⽅式,但是 很麻烦)。此时,⽤列表就⽐较合适。

因为列表的是通过下标来标记元素位置的,下标也可称为索引。 下标从0开始,每添加⼀个元素,就⾃动+1

元素添加

元素的添加有2种⽅式,插⼊、追加,插⼊指可以可以把⼀个新元素插⼊到列表的任意位置

插⼊

追加

添加到列表的尾部

列表的修改

直接根据下标找到元素重新赋值即可

删除元素

有2种删除⽅法,⼀个是下标删除,⼀个是元素值删除。

还有指定下标删除

判断某元素是否在列表⾥

注,以上只是列表的部分⽤法,后续我们会深⼊学习,我们今天先了解这些就够了。

六、运算符

计算机可以进⾏的运算有很多种,可不只加减乘除这么简单,运算按种类可分为算数运算、⽐较运算、 逻辑运算、赋值运算、成员运算、身份运算、位运算,今天我们暂只学习算数运算、⽐较运算、逻辑运 算、赋值运算、成员运算

6.1 算术运算符

以下假设变量:a=10,b=20

6.2 ⽐较运算符

以下假设变量:a=10,b=20

6.3 赋值运算符

以下假设变量:a=10,b=20

6.4 逻辑运算 以下假设变量:

a=10,b=20

注意了还可以多个or 或and 拼在⼀起

注意,我画的红线,只要遇到or 就相当于把公式分成2半了

括号⾥的⼦公式会先计算出来结果,再跟其它的值对⽐。 因为括号的优先级更⾼

6.5 成员运算

只有in, not in 2种, ⽤来测试数据中是否包含了⼀系列的成员

注意,可以⽤来测试字符串、列表、元组、字典、集合,但是不能测试数字类型

七、全宇宙最好⽤的代码编辑器

到现在为⽌,我们也是写过代码的⼈啦,但你有没有发现,每次写代码要新建⽂件、写完保存时还要选 择存放地点,执⾏时还要切换到命令⾏调⽤python解释器,好麻烦呀,能否⼀⽓呵成,让我简单的写代 码?此时开发⼯具IDE集成开发环境(Integrated Development Environment )上场啦,⼀个好的IDE 能帮你⼤⼤提升开发效率。 很多语⾔都有⽐较流⾏的开发⼯具,⽐如JAVA 的Eclipse, C#,C++的VisualStudio, Python的是啥呢? Pycharm,最好的Python 开发IDE。

安装Pycharm可以前往官网进行下载,在此附上其下载链接:Download PyCharm: The Python IDE for data science and web development by JetBrainsDownload the latest version of PyCharm for Windows, macOS or Linux.https://www.jetbrains.com/pycharm/download/,也可以前往up主的网盘进行下载

链接:https://pan.baidu.com/s/1igQSaFXYBpS5pXbl1oiQUg?pwd=o053

提取码:o053

下载完成后,我们打开pycharm的安装包,如下图所示,点击下一步。

到达该页面,建议大家自定义安装,点击浏览按钮。

这里我选择的是E盘的位置,建议大家把文件夹都安装在自己熟悉的地方上。

位置选择完成后,会跳转到之前的页面,然后我们点击下一步。

点击下一步之后,我们将上述选择都勾选上,然后接着点下一步。

然后一直下一步,直到开始安装,等待安装完成。

安装完成后,我们选择之后重新启动,然后点击完成。

然后我们检查一下环境配置对不对。打开环境变量,在上一章节我们提到过如何打开检查一下用户变量中是否有以下信息。

打开其中的path看看里面有没有pycharm,可以看到我们的环境是ok的。

pycharm是国外的一款收费软件,现在进行对pycharm的永久以及汉化。

链接:https://pan.baidu.com/s/1PbZ1MdutB-Tisgl7qhJN9w?pwd=mabn

提取码:mabn

点击上述链接在网盘里下载Up主给大家准备好的工具包,并将其下载解压到桌面上。先打开pycharm软件,然后打开解压后的文件夹,找到其中的pycharm并进行双击打开,弹出以下页面,则说明已经成功!

接下来是pycharm的汉化教程,双击进入pycharm找到左上角的File,点击后找到其列表中的setting打开。

进入之后找到左边列表中的plugins并单击打开,然后在marketplace下面方框内输入chinese,在下面列表中选择chinese(simplifled)那个选项,然后点击Install.

.

完成后点击ok等待重启然后就会完成pycharm的汉化了。

Pycharm还有很多更nb的功能,我们以后慢慢发掘

⼋、读取⽤户输⼊

若你的程序要接收⽤户指令,可以⽤input语法:

执⾏脚本就会发现,程序会等待你输⼊姓名后再往下继续⾛。

可以让⽤户输⼊多个信息,如下

注意,input()⽅法接收的只是字符串,即使你输⼊的是数字,它也会按字符串处理

九、格式化打印

⽤字符拼接的⽅式很难实现这种格式的输出,所以⼀起来学⼀下新姿势 你只需要简单的在字符串⾥引⽤你外部的变量就可以啦。。。。。

语法

注意字符串开头要加上 f ,才可以在⾥⾯⽤ {} 来引⽤外部变量 这样实现上⾯的需求就很简单啦

⼗、流程控制之if...else...

假如把写程序⽐做⾛路,那我们到现在为⽌,⼀直⾛的都是直路,还没遇到过分叉⼝,想象现实中,你 遇到了分叉⼝,然后你决定往哪拐必然是有所动机的。你要判断那条岔路是你真正要⾛的路,如果我们 想让程序也能处理这样的判断怎么办? 很简单,只需要在程序⾥预设⼀些条件判断语句,满⾜哪个条 件,就⾛哪条岔路。这个过程就叫流程控制。

基本上在各个语⾔中,都是⽤语法if…else…来实现,可分为单分⽀、双分⽀、多分⽀

10.1单分⽀

10.2 双分⽀

10.3 缩进

这⾥必须要插⼊这个缩进的知识点

你会发现,上⾯的if代码⾥,每个条件的下⼀⾏都缩进了4个空格,这是为什么呢?这就是Python的⼀ ⼤特⾊,强制缩进,⽬的是为了让程序知道,每段代码依赖哪个条件,如果不通过缩进来区分,程序怎 么会知道,当你的条件成⽴后,去执⾏哪些代码呢?

在其它的语⾔⾥,⼤多通过 {} 来确定代码块,⽐如C,C++,Java,Javascript都是这样,看⼀个JavaScript 代码的例⼦

在有 {} 来区分代码块的情况下,缩进的作⽤就只剩下让代码变的整洁了。

Python是⻔超级简洁的语⾔,发明者定是觉得⽤ {} 太丑了,所以索性直接不⽤它,那怎么能区分代码 块呢?答案就是强制缩进。

Python的缩进有以下⼏个原则:

        顶级代码必须顶⾏写,即如果⼀⾏代码本身不依赖于任何条件,那它必须不能进⾏任何缩进

        同⼀级别的代码,缩进必须⼀致

        官⽅建议缩进⽤4个空格,当然你也可以⽤2个,如果你想被⼈笑话的话。

10.4 多分⽀

回到流程控制上来,if…else …可以有多个分⽀条件

写个猜年龄的游戏吧

上⾯的例⼦,根据你输⼊的值不同,会最多得到3种不同的结果

再来实现⼀下下⾯这个需求吧,写⼀段程序,读取⽤户输⼊的⼯资,根据⼯资多少打印相应的⽂字

你的⼯资多少决定了你的⼼态

⽉薪1000:⽼板,我是你爹。 ⽉薪2000:⽼板,wqnmlgbxxxx ⽉薪5000:⽼板脑⼦有坑,背 后说坏话。 ⽉薪1万:⽼板说的有有点问题,但我不说话。 ⽉薪2万:⽼板说啥就是啥吧,给钱就 ⾏。 ⽉薪3万:⽼板说什么都是对,如果有⼈错了,那⼀定是我。 ⽉薪5万:996就像呼吸⼀样⾃ 然。 ⽉薪10万:公司就是我家。

请先⾃⼰写,写20分钟还写不出来再看我的

这⾥有个问题,就是当我输⼊25000的时候 ,它打印的结果是 “⽼板说啥就是啥吧,给钱就⾏”, 但是 25000 明明也⼤于第条件 elif salary>=10000: 呀, 为什么不同时执⾏后⾯的呢呢?这是因为代码是 从上到下依次判断,只要满⾜⼀个,就不会再往下⾛啦,这⼀点⼀定要清楚呀!

⼗⼀、今⽇练习题

11.2 写个匹配成绩的⼩程序,成绩有ABCDE 5个等级,与分数的对应关系如下

要求⽤户输⼊0-100的数字后,你能正确打印他的对应成绩等级,⽐如输⼊的是75,则打印C

初级答案:

进阶答案:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

odoo实施

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值