俗话说的好,千里之行始于足下。无论做什么事情,基础都是最重要的,当你以为自己“精通”某语言的时候,有没有问过自己:
“能不能把这些知识,用最简单的话说出来,让不懂的人也能听明白?”
当你真正精通某语言的时候,我相信你一定能做到。如果做不到,那就需要往下看,再学习一下基础。
为了帮助大家彻底理解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. 语法基础:数据类型
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) #查询所有关键字
实际 *** 作
温馨提示:咱们在起变量名或者文件名时不能使用这些关键字名字哟,否则会报错.抛出异常~请大家注意哟。
标识符
祖国的花朵(开发人员)在程序中自定义的一些符号和名称。标示符是咱们自己定义的,如变量名、函数名、类名等。
标识符规则
定义这些标识符也有一定的规则:标识符由字母下划线和数字组成,但是不能以数字开头,可以使用下划线或字母开头,注意在 python 中,标识符是严格区分大小写的哟。 变量 Andy 不等于 变量 andy 这是两个变量。
标识符命名规则
命名规则,可以简单的理解为,咱们在起名字的时候是需要遵守相关规则的.主要是为了让别人一看就明白是什么意思,做什么用的.可以提高代码可读性。比如:名字 就定义为 name , 定义学生用 student。
驼峰命名法
同时呢,在需要多个单词进行组合时,咱们使用驼峰命名法:
小驼峰式命名法: 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myname、aDog
大驼峰式命名法: 每一个单字的首字母都采用大写字母,例如:Firstname、Lastname。不过在程序员中还有一种命名法比较流行,就是用下划线“_”来连接所有的单词,比如send_buf
名字和对象之间关系
我们可以用 = 等号,建立立定义的变量名字和对象之间的引用关系,也可以用使用 del 来解除这种引用关系。
# 举个例子
name = '天下第一帅' # 我将 天下第一帅 这个字符串赋值给了 name 这个变量名,可以理解为,下次我通过 name 名字可以联系到 天下第一帅 这个人.
实际 *** 作
# del 解除引用关系age = 17 # 永远17岁del age # del 是 delete 的缩写,此行代码表示删除 age 和 17 之间的引用关系print(age) # 因为已经删除引用关系,所以访问不到 17 这个数据,则抛出异常
实际 *** 作
名字空间
当我们在定义了一些变量名,函数名,类名之后,会有一个空间来收纳这些名字和它们所对应的数据类型和数据内容。
# 举个例子height = '190CM' # 小编的理想身高.但是现实很残酷.def func1():passclass Fun():pass
实际 *** 作
使用 %whos 查看名字空间,我们也可以使用 %reset 来清空这个空间,清空之后,我们就需要重新执行一次定义的过程,才能重新存储在名字空间内。
实际 *** 作
4. 语法基础:输出
普通的输出
python中的输出
用 print() 在括号中加上字符串,就可以向屏幕上输出指定的文字。比如输出 '李铁柱',用代码实现如下:
name = '李铁柱'print(name)
运行结果
print()也可以打印整数,或者计算结果
# 举个例子print(300)print(100 + 200)
实际 *** 作
因此,我们可以把计算100 + 200 的结果打印得更漂亮一点:
print('100 + 200 = ', 100 + 200)
实际 *** 作
注意,对于100 + 200,Python 解释器自动计算出结果 300,但是,'100 + 200 =' 是字符串而非数学公式,Python 把它视为字符串,直接进行打印输出。
5. 语法基础:格式化输出
格式化 *** 作的目的,比如说有下列代码:
print('大家好,我叫 李铁柱,我今年 24 岁')print('大家好,我叫 候德柱,我今年 25 岁')print('大家好,我叫 候不柱,我今年 26 岁')
大家仔细观察一下,能够看到,我在 print 输出自我介绍的时候,用了很多的相同字体,就只有一些不同的字段,那么咱们能否简化一下程序呢?
age = 24print("我今年%d岁" % age)age += 25print("我今年%d岁" % age)age += 26print("我今年%d岁" % age)
实际 *** 作
在程序中,看到了 % 这样的 *** 作符,这就是 Python 中格式化输出。
age = 18name = "小岳岳"print("我的姓名是%s, 年龄是%d" % (name, age))
运行结果
在这里咱们一次使用了两个格式化符号,分别是:%s 和 %d。
%s:表示格式化输出字符串
%d:表示格式化输出十进制整数
除了这两个格式化输出字符还有很多,往下看。
常用的格式化符号
6. 语法基础:输入
现在,你已经可以用 print() 输出你想要的结果了。但是,如果要让用户从电脑输入一些字符怎么办?Python 提供了一个 input(),可以让用户输入字符串,并存放到一个变量里。比如输入用户的名字:
name = input() # input()
当你输入name = input()并按下回车后,Python交互式命令行就在等待你的输入了。这时,你可以输入任意字符,然后按回车后完成输入。
输入完成后,不会有任何提示,Python 交互式命令行又回到就绪状态了。那我们刚才输入的内容到哪去了?答案是存放到 name 变量里了。可以直接输入 name 查看变量内容:
7. 语法基础:运算符
标准 *** 作符
python 同大多数语言一样,也有自己的 *** 作符,分别用来应对不同的工作内容。今天要讲的是 Python 中最常用的几种标准 *** 作符:算术运算符、赋值运算符、比较运算符、逻辑运算符。
算数运算符
注意:混合运算时,优先级顺序为: ** 高于 * / % // 高于 + - ,为了避免歧义,建议使用 () 来处理运算符优先级。并且,不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算。
实际 *** 作
a = 10b = 20print(a+b)print(a-b)print(a*b)print(a/b)
赋值运算符
实际 *** 作
a = 10 # 单个赋值b = 20c,d,e = 30,40,50 # 多个赋值 c = 30 , d = 40 , e = 50print(a,b,c,d,e)
复合赋值运算符
实际 *** 作
c = 40a = 20# print(c += a) # 直接 print() 是无法输出结果的哟c += aprint(c)c -= aprint(c)c *= aprint(c)c /= aprint(c)c %= aprint(c)
8. 语法基础:常用的数据类型转换
数据类型转换
有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。
以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值。
类型转换
# 给小伙伴们举几个例子# 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 = 10f1 = 3.14print(type(str(num1)))# eval(): 将字符串形式的数据,转换为原本的类型str1 = "3.14"print(type(eval(str1)))
*** 作结果
总结以上是内存溢出为你收集整理的Python中你必须了解的知识全部内容,希望文章能够帮你解决Python中你必须了解的知识所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)