目录
前言
一、概述
(一)、python的优缺点
(二)、Python应用场景
(三)、pycharm安装
二、python基础操作
(一)、print打印
(二)、变量
(三)、Python基本数据类型分类
(四)、运算
(五)、循环语句
(六)、检测字符串
(七)、列表
(八)、字典
(九)、模块
总结
前言
python
的创始人为
Guido von Rossum
(吉多
·
范
·
罗苏姆),俗称
”
龟叔
“
,荷兰人。
1989
年圣诞节期间,在阿姆斯特丹,
Guido
为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为
ABC
语言的一种继承。之所以选中
Python
(大蟒蛇的意思)作为该编程语言的名字,是因为他是一个叫
Monty Python
的喜剧团体的爱好者。
ABC
是由
Guido
参加设计的一种教学语言。是专门为非专业程序员设计的。但是
ABC
语言并没有成功,究其原因,Guido
认为是其非开放
(
封闭,不开源
)
造成的。
Guido
决心在
Python
中避免这一错误。同时他还想实现在
ABC
中闪现
过但未曾实现的东西。就这样,
Python
在
Guido
手中诞生了。
一、概述
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
(一)、python的优缺点
python优点:
1. 简单,易学,易懂,开发效率高
Python
容易上手
,
语法较简单。在
linux
上和写
shell
一样,拿着
vi
都可以写,直接
就可以运行。
2. 免费、开源
我们运维用的大部分软件都是开源啊
,
亲!
3. 可移植性,跨平台
Python
已经被移植在许多不同的平台上
,Python
程序无需修改就可以在
Linux,Windows,mac
等平台上运行。
4. 可扩展性
如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用
C
或
C++
编写,然后在你的
Python
程序中使用它们(讲完编译型语言和解释型语言区别就容易理了
)
。
5. 丰富的库
想产生个随机数
?
调库啊。想操作
os?
调库啊。想操作
mysql?
调库啊。
Python
的库太丰富宠大了,它可以帮助你处理及应对各种场景应用。
6. 规范的代码
Python
采用强制缩进的方式使得代码具有极佳的可读性。
python缺点:
1. 执行效率慢
这是解释型语言
(
下面的解释器会讲解说明
)
所通有的,同时这个缺点也被计算机越来越强性能所
弥补。有些场景慢个几微秒几毫秒
,
一般也感觉不到。
2. 代码不能加密
这也是解释型语言的通有毛病,当然也有一些方法可以混淆代码。解决方法
:
参考优点的第
4
条。
(二)、Python应用场景
1. 操作系统管理、服务器运维的自动化脚本
一般说来,
Python
编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的
shell
脚本。
2. Web开发
Python
经常被用于
Web
开发。比如,通过
mod_wsgi
模块,
Apache
可以运行用
Python
编写的
Web
程序。
Python
定
义了
WSGI
标准应用接口来协调
Http
服务器与基于
Python
的
Web
程序之间的通信。一些
Web
框架,如
Django,TurboGears,web2py,Zope
等,可以让程序员轻松地开发和管理复杂的
Web
程序。
3. 服务器软件(网络软件)
Python
对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。第三方库
Twisted
支持异步网络编程和多数标准的网络协议
(
包含客户端和服务器
)
,并且提供了多种工具,被广泛用于编写高性能的服务器软
件。
4. 游戏
很多游戏使用
C++
编写图形显示等高性能模块,而使用
Python
或者
Lua
编写游戏的逻辑、服务器。相较于
Python,
Lua
的功能更简单、体积更小;而
Python
则支持更多的特性和数据类型。
5. 科学计算
NumPy,SciPy,Matplotlib
可以让
Python
程序员编写科学计算程序。
6. 其它领域
无人驾驶,人工智能等。
(三)、pycharm安装
PyCharm
是一种
Python
IDE
(
Integrated Development Environment,
集成开发环境)。它带有一整套可以帮助用户在使用
Python
语言开发时提高其效率的工具,比如调试、语法高亮、
Project
管理、代码跳转、智能提示、自
动完成、单元测试、版本控制。
pycharm
官网下载地址
:
http://www.jetbrains.com/pycharm/download/#section=linux
专业版(Professional
):
功能全,需要收费,但可以试用
30
天 。
社区版(Community
):
免费版,学习基础够用了。
保存的文件要以
.py
结尾。
二、python基础操作
在
centos7上默认
自带的
python
版本为
2.7.X
python2.x 2020
年终止维护
python3.x
目前主流版本
python
官网下载地址
https://www.python.org/getit/
查看版本 python --version
(一)、print打印
注释
# 或者三引号(""" """)
基本打印规则
print除了打印还有打印换行符
Python程序由多个逻辑行构成,一个逻辑行不一定为一个物理行
显式行连接
: \在物理行后跟反斜杠, 代表此行连接下一行代码
隐式行连接: () [] {} 在括号里换行会自动行连接
字符串需要用引号引起来,单引双引都可以
分开打印,会打印几行
换行打印
打印结果会换行
不换行打印
可以实现不换行只打印一行
使用\符号连接行,物理上换了行,逻辑上并没有换行
(),[],{}
里的多行内容不用
\
连接,但需要每行引起来
;
打印出来的结果不换行
(二)、变量
在内存中开辟一块空间,存储规定范围内的值,值可以改变。通俗的说
变量就是给数据起个名字
,通过这个名字来访问和存储空间中的数据。
变量的特点
可以反复存储数据
可以反复取出数据
可以反复更改数据
- 必须不能以数字开头
- 变量名中只能含有字母,数字和_,其他字符不可以
- 变量名不可以是系统的关键字
-
变量名区分大小写
多个变量名指向同一个值
多个变量指向多个值
案例:设置两个变量边长为r 面积为area ,计算周长为40的正方形的面积,用print()将面积打印出来
(三)、Python基本数据类型分类
1. 数字
int 整型(1, 2, -1, -2)
float 浮点型(34.678)
bool 布尔型(True/False)
complex
复数
(4+3J,
不应用于常规编程,这种仅了解一下就好)
2. 字符串
str 单引号和双引号内表示的内容为字符串 “hello world" "12345"
3. 列表
list 使用中括号表示 [1, 2, 3, 4]
4. 元组
tuple 使用小括号表示 (1, 2, 3, 4)
5. 字典
dict 使用大括号表示,存放key-value键值对 {"a":1, "b":2, "c":3}
6. 集合
set 也使用大括号表示,但与字典有所不同 {1, 2, 3, 4}
转义字符\
r禁止转义字符操作
类型转换
结论:其它类型都可以转换成字符串类型
(四)、运算
比较运算
算数运算
注意:python语言的浮点数运算存在一个"不确定尾数"问题,即两个浮点数运算,运算结果可能会增加"不确定尾数"
逻辑运算
成员运算
用in判断是否存在
(五)、循环语句
if语句
单分支
input接受键盘的输入
多分支
range循环
while循环
for...in循环(有限次数循环)遍历
for循环和else语句,正常循环结束执行else
不正常结束(break跳出循环) ,不执行 else语句吗,break是跳出一层循环
continue:结束本次循环,但不跳出当前循环,不执行continue后面的语句,直接开始下次循环
案例
九九乘法表
一张纸厚0.08mm ,对折多少次才能达到珠穆朗玛峰的高度8848.13m
(六)、检测字符串
检测字符串是否以xx结尾,函数返回布尔值(end.swith)
测试字符串是否都是大写(isupper)
测试是否全都是小写(islower)
检测字符串是否是数值字符串(isnumeric)
将字符串切割并把它们放到列表中(split)
使用指定字符串连接成字符串join
join是字符串合并函数
字符串中的替换(replace)
去掉字符串左右两侧指定的字符,不指定则去掉空格或者\n或者\t(strip)
去掉字符串左侧指定的字符不指定则去掉空格或者\n或者\t(lstrip)
去掉字符串右侧指定的字符,不指定则去掉空格或者\n或者\t(rstrip)
(七)、列表
用[ ]表示
创建空列表
访问列表的元素
下标从0开始
修改列表中的元素
末尾添加元素(append)仍然是同一列表
指定位置插入元素(insert)
删除元素(del)
删除所有元素 del list3
列表的相加操作
列表相乘
取片操作
清空列表(clear)
内容清空,列表还在
复制列表(copy)为不同列表
计算某个值在列表中出现的次数(count)
获取某个值在列表中第一次出现的索引值(index)
将一个表继承给另外一个列表(extend)
移除列表中的指定索引元素,有返回值(pop)
不指定为默认最后一个元素
删除列表中指定的值,没有返回值(remove)
列表反转操作(reverse)
从小到大(sort)
从大道小(sort(reverse=True))
元祖 与列表相似,用()表示,除了访问啥也干不了
(八)、字典
用{ }表示,是无序的,键值对存在,无下标,所以速度是最快的
字典函数
(九)、模块
导入一个库 import os
获取当前工作目录(get)
删除一个文件(remove)
给文件或目录改名(rename)
直接运行系统命令
总结
对python基本介绍就到这里了,可以满足基本的操作。还有集合、函数、凯撒密码等相比稍微复杂一点内容没有介绍,更多的是多练习,项目较多,不容易背记。