当前位置 : 主页 > 编程语言 > python >

Python中你必须了解的知识

来源:互联网 收集:自由互联 发布时间:2021-09-02
俗话说的好,千里之行始于足下。无论做什么事情,基础都是最重要的,当你以为自己“精通”某语言的时候,有没有问过自己: “能不能把这些知识,用最简单的话说出来,让不懂的

俗话说的好,千里之行始于足下。无论做什么事情,基础都是最重要的,当你以为自己“精通”某语言的时候,有没有问过自己:

“能不能把这些知识,用最简单的话说出来,让不懂的人也能听明白?”

当你真正精通某语言的时候,我相信你一定能做到。如果做不到,那就需要往下看,再学习一下基础。

为了帮助大家彻底理解Python,七月在线针对各大知识点进行了图片化和文字化显示。

涵盖了大量文字概念和代码的逻辑处理思路以及对应案例,可以直接通过文字概念和图片的逻辑处理流程,来辅助自己对知识的消化和吸收。

一、认识Python

Python 是一种计算机程序设计语言。是一种动态的、面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。

Python 的创始人为荷兰人吉多·范罗苏姆(Guido van Rossum)。1989 年圣诞节期间,在阿姆斯特丹,Guido 为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。

ABC 是由 Guido 参加设计的一种教学语言。

就 Guido 本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。

但是 ABC 语言并没有成功,究其原因,Guido 认为是其非开放造成的。

Guido 决心在 Python 中避免这一错误。同时,他还想实现在 ABC 中闪现过但未曾实现的东西。

就这样,Python 在 Guido 手中诞生了。

可以说,Python 是从 ABC 发展起来。Python 已经成为最受欢迎的程序设计语言之一。

自从 2004 年以后,python 的使用率呈线性增长。Python2 于 2000 年 10 月 16 日发布,稳定版本是 Python2.7 。

Python3 于 2008年 12 月 3 日发布,不完全兼容Python2。2011年1月,它被 TIOBE 编程语言排行榜评为 2010 年度语言。

由于 Python 语言的简洁性、易读性以及可扩展性,在国外用 Python 做科学计算的研究机构日益增多,一些知名大学已经采用 Python 来教授程序设计课程。

例如卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用 Python 语言讲授。

众多开源的科学计算软件包都提供了 Python 的调用接口,例如著名的计算机视觉库OpenCV 、三维可视化库 VTK 、医学图像处理 库 ITK 。

而 Python 专用的科学计算扩展库就更多了,如下面3个十分经典的科学计算扩展库:NumPy、SciPy 和 matplotlib,它们分别为 Python提供了快速数组处理、数值运算以及绘图功能。

因此 Python 语言及其众多的扩展库所构成的开发环境十分适合工程技术、科研人员处理实验数据、制作图表,甚至开发科学计算应用程序。

相关推荐:《Python视频教程》

二、Python应用场景

1. Web应用开发

Python经常被用于Web开发。比如,通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。

Python定义了WSGI标准应用接口来协调Http服务器与基于Python的Web程序之间的通信。一些Web框架,如Django,TurboGears,web2py,Zope等,可以让程序员轻松地开发和管理复杂的Web程序。

2. 操作系统管理、服务器运维的自动化脚本

在很多操作系统里,Python是标准的系统组件。大多数Linux发行版以及NetBSD、OpenBSD和Mac OS X都集成了Python,可以在终端下直接运行Python。

有一些Linux发行版的安装器使用Python语言编写,比如Ubuntu的Ubiquity安装器,Red Hat Linux和Fedora的Anaconda安装器。

Gentoo Linux使用Python来编写它的Portage包管理系统。Python标准库包含了多个调用操作系统功能的库。

通过pywin32这个第三方软件包,Python能够访问Windows的COM服务及其它Windows API。

使用IronPython,Python程序能够直接调用.Net Framework。一般说来,Python编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的shell脚本。

3. 网络爬虫

Python有大量的HTTP请求处理库和HTML解析库,并且有成熟高效的爬虫框架Scrapy和分布式解决方案scrapy-redis,在爬虫的应用方面非常广泛。

4. 科学计算

NumPy、SciPy、Pandas、Matplotlib可以让Python程序员编写科学计算程序。

5. 桌面软件

PyQt、PySide、wxPython、PyGTK是Python快速开发桌面应用程序的利器。

6. 服务器软件(网络软件)

Python对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。

第三方库Twisted支持异步网络编程和多数标准的网络协议(包含客户端和服务器),并且提供了多种工具,被广泛用于编写高性能的服务器软件。

7. 游戏

很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、服务器。

相较于Python,Lua的功能更简单、体积更小;而Python则支持更多的特性和数据类型。

8. 构思实现,产品早期原型和迭代

Google、NASA、Facebook都在内部大量地使用Python。

三、Python基础知识

1. 语法基础:注释

在程序中对某些代码进行标注说明,这就是注释的作用,能够大大增强程序的可读性。python 常用单行注释是 # ,常用多行注释是三对单引号 ''' '''

# 这是一个单行注释
# print("七月你好,我是八月.") 此行代码不执行显示.
# 快捷键: ctrl + / 快速设置注释 和 快速取消注释
'''
这是一个多行注释
该范围内的代码不会执行显示
'''

2. 语法基础:数据类型

1566811339(1).png

3. 语法基础:关键字和标识符

关键字

python 一些具有特殊功能的标识符,这就是所谓的关键字。关键字,是 python 已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符

那么 python 中关键字都有哪些呢?

['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else',
 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or',
  'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

那么咱们如何去查询 python 中有哪些关键字呢?

# 在python中若想查询python中有哪些关键字可以先导入keyword模块
import keyword #导入关键字模块
print(keyword.kwlist) #查询所有关键字

实际操作

1566811363(1).png

温馨提示:咱们在起变量名或者文件名时不能使用这些关键字名字哟,否则会报错.抛出异常~请大家注意哟。

标识符

祖国的花朵(开发人员)在程序中自定义的一些符号和名称。标示符是咱们自己定义的,如变量名、函数名、类名等。

标识符规则

定义这些标识符也有一定的规则:标识符由字母下划线和数字组成,但是不能以数字开头,可以使用下划线或字母开头,注意在 python 中,标识符是严格区分大小写的哟。 变量 Andy 不等于 变量 andy 这是两个变量。

标识符命名规则

命名规则,可以简单的理解为,咱们在起名字的时候是需要遵守相关规则的.主要是为了让别人一看就明白是什么意思,做什么用的.可以提高代码可读性。比如:名字 就定义为 name , 定义学生用 student。

驼峰命名法

同时呢,在需要多个单词进行组合时,咱们使用驼峰命名法:

小驼峰式命名法: 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog

大驼峰式命名法: 每一个单字的首字母都采用大写字母,例如:FirstName、LastName。不过在程序员中还有一种命名法比较流行,就是用下划线“_”来连接所有的单词,比如send_buf

名字和对象之间关系

我们可以用 = 等号,建立立定义的变量名字和对象之间的引用关系,也可以用使用 del 来解除这种引用关系。

# 举个例子

name = '天下第一帅' # 我将 天下第一帅 这个字符串赋值给了 name 这个变量名,可以理解为,下次我通过 name 名字可以联系到 天下第一帅 这个人.

实际操作

1566811379(1).png

# del 解除引用关系
age = 17 # 永远17岁
del age # del 是 delete 的缩写,此行代码表示删除 age 和 17 之间的引用关系
print(age) # 因为已经删除引用关系,所以访问不到 17 这个数据,则抛出异常

实际操作

1566811395(1).png

名字空间

当我们在定义了一些变量名,函数名,类名之后,会有一个空间来收纳这些名字和它们所对应的数据类型和数据内容。

# 举个例子
height = '190CM' # 小编的理想身高.但是现实很残酷.
def func1():
pass
class Fun():
pass

实际操作

1566811408(1).png

使用 %whos 查看名字空间,我们也可以使用 %reset 来清空这个空间,清空之后,我们就需要重新执行一次定义的过程,才能重新存储在名字空间内。

实际操作

1566811432(1).png

4. 语法基础:输出

普通的输出

python中的输出

用 print() 在括号中加上字符串,就可以向屏幕上输出指定的文字。比如输出 '李铁柱',用代码实现如下:

name = '李铁柱'
print(name)

运行结果

1566811455(1).png

print()也可以打印整数,或者计算结果

# 举个例子
print(300)
print(100 + 200)

实际操作

1566811467(1).png

因此,我们可以把计算100 + 200 的结果打印得更漂亮一点:

print('100 + 200 = ', 100 + 200)

实际操作

1566811479(1).png

注意,对于100 + 200,Python 解释器自动计算出结果 300,但是,'100 + 200 =' 是字符串而非数学公式,Python 把它视为字符串,直接进行打印输出。

5. 语法基础:格式化输出

格式化操作的目的,比如说有下列代码:

print('大家好,我叫 李铁柱,我今年 24 岁')
print('大家好,我叫 候德柱,我今年 25 岁')
print('大家好,我叫 候不柱,我今年 26 岁')

大家仔细观察一下,能够看到,我在 print 输出自我介绍的时候,用了很多的相同字体,就只有一些不同的字段,那么咱们能否简化一下程序呢?

age = 24
print("我今年%d岁" % age)
age += 25
print("我今年%d岁" % age)
age += 26
print("我今年%d岁" % age)

实际操作

1566811496(1).png

在程序中,看到了 % 这样的操作符,这就是 Python 中格式化输出。

age = 18
name = "小岳岳"
print("我的姓名是%s, 年龄是%d" % (name, age))

运行结果

1566811560(1).png

在这里咱们一次使用了两个格式化符号,分别是:%s 和 %d。

%s:表示格式化输出字符串

%d:表示格式化输出十进制整数

除了这两个格式化输出字符还有很多,往下看。

常用的格式化符号

1566811581(1).png

6. 语法基础:输入

现在,你已经可以用 print() 输出你想要的结果了。但是,如果要让用户从电脑输入一些字符怎么办?Python 提供了一个 input(),可以让用户输入字符串,并存放到一个变量里。比如输入用户的名字:

name = input() # input()

当你输入name = input()并按下回车后,Python交互式命令行就在等待你的输入了。这时,你可以输入任意字符,然后按回车后完成输入。

输入完成后,不会有任何提示,Python 交互式命令行又回到就绪状态了。那我们刚才输入的内容到哪去了?答案是存放到 name 变量里了。可以直接输入 name 查看变量内容:

1566811592(1).png

7. 语法基础:运算符

标准操作符

python 同大多数语言一样,也有自己的操作符,分别用来应对不同的工作内容。今天要讲的是 Python 中最常用的几种标准操作符:算术运算符、赋值运算符、比较运算符、逻辑运算符。

算数运算符

1566811610(1).png

注意:混合运算时,优先级顺序为: ** 高于 * / % // 高于 + - ,为了避免歧义,建议使用 () 来处理运算符优先级。并且,不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算。

实际操作

a = 10
b = 20
print(a+b)
print(a-b)
print(a*b)
print(a/b)

赋值运算符

1566811622(1).png

实际操作

a = 10 # 单个赋值
b = 20
c,d,e = 30,40,50 # 多个赋值 c = 30 , d = 40 , e = 50
print(a,b,c,d,e)

复合赋值运算符

1566811639(1).png

实际操作

c = 40
a = 20
# print(c += a) # 直接 print() 是无法输出结果的哟
c += a
print(c)
c -= a
print(c)
c *= a
print(c)
c /= a
print(c)
c %= a
print(c)

8. 语法基础:常用的数据类型转换

数据类型转换

有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。

以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值。

1566811659.png

类型转换

# 给小伙伴们举几个例子
# int(): 将数据转换为 int 类型
str1 = "10"
num1 = int(str1)
print(int)
# int() 处理浮点数,只留下整数部分,舍弃小数部分(并不是四舍五入操作)
num2 = int(3.74)
print(num2)
# float() 将数据转化为浮点数
str2 = "3.14"
f1 = float(str2)
print(type(f1))
# str() : 转换为 字符串类型
num1 = 10
f1 = 3.14
print(type(str(num1)))
# eval(): 将字符串形式的数据,转换为原本的类型
str1 = "3.14"
print(type(eval(str1)))

操作结果

1566811679(1).png

以上就是Python中你必须了解的知识的详细内容,更多请关注自由互联其它相关文章!

网友评论