Python运维系列--Python基础(二)基础语法

一、环境

环境版本
操作系统CentOS 7.6.1810
Python3.8.5
Vim7.4.629

二、变量

Python 3 中的变量命名有一定要求

  1. 必须要字母及下划线开始
  2. 其他符号可以是数字、字母或下划线
  3. 命名区分大小写,且不能使用关键字

关键字指的是为 Python 语言预留的单词,例如 import

三、数据类型

3.1 数字

  1. int 整数类型
  2. float 浮点数
  3. bool 布尔型
  4. complex 复数

脚本 3.1.py

#! /usr/bin/env python3

a = 100
b = 12.2
c = True
d = 4+3j

print(type(a),a)
print(type(b),b)
print(type(c),c)
print(type(d),d)
[root@localhost 2]# python3 3.1.py 
<class 'int'> 100
<class 'float'> 12.2
<class 'bool'> True
<class 'complex'> (4+3j)

3.2 字符串

Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符。

脚本 3.2.py

#! /usr/bin/env python3

a = "100"
b = 'hello'
c = "word"
d = '"hell,word"'
e = "\"hello\",\"word\""

print(type(a),a)
print(type(b),b)
print(type(c),c)
print(type(d),d)
print(type(e),e)
[root@localhost 2]# python3 3.2.py 
<class 'str'> 100
<class 'str'> hello
<class 'str'> word
<class 'str'> "hell,word"
<class 'str'> "hello","word"

3.3 列表

列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

列表是写在方括号 [] 之间、用逗号分隔开的元素列表。

脚本 3.3.py

#!/usr/bin/env python3

a = [ 'abcd', 786 , 2.23, 'awe', 70.2 ,[3,2,1]]

print(type(a))
[root@localhost 2]# python3 3.3.py 
<class 'list'>

3.4 元组

元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。

脚本 3.4.py

#!/usr/bin/env python3

a = ( 'abcd', 786 , 2.23, 'awe', 70.2 ,[3,2,1] )

print(type(a))
[root@localhost 2]# python3 3.4.py 
<class 'tuple'>

3.5 字典

列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
键(key)必须使用不可变类型。
在同一个字典中,键(key)必须是唯一的。

脚本 3.5.py

#!/usr/bin/env python3

a = { 'a':2 , 'b':4 , 'c':'h' , 'd':"p" }

print(type(a))
[root@localhost 2]# python3 3.5.py 
<class 'dict'>

四、运算

4.1 数学运算

脚本 4.1.py

#!/usr/bin/env python3

a = 100
b = 100.2

# 加法
e = a + b
# 减法
f = b - a
# 乘法
g = b * a
# 除法
h = b / a
# 整除
i = b // a
# 取余
j = b % a
# 乘方
k = b ** a

print(e)
print(f)
print(g)
print(h)
print(i)
print(j)
print(k)
[root@localhost 2]# python3 4.1.py 
200.2
0.20000000000000284
10020.0
1.002
1.0
0.20000000000000284
1.2211588271895953e+200

4.2 或非运算

and 表示与运算,只有两个运算值都是 True 才返回 True
or 表示或运算,有一个为 True 则返回 True

脚本 4.2.py

#!/usr/bin/env python3

a = True
b = False

c = a and b
d = a or b
e = a and a and b
f = a or b or a
g = a or b and b

print(c)
print(d)
print(e)
print(f)
print(g)
[root@localhost 2]# python3 4.2.py 
False
True
False
True
True

4.3 字符串运算

脚本 4.3.py

#!/usr/bin/env python3

a = "hello,word"

# 取第一个字符
print (a[0])

# 取第二个字符
print (a[1])

# 取倒数第一个字符
print (a[-1])

# 取倒数第二个字符
print (a[-2])

# 取前两个字符
print (a[:2])

# 取前三个字符
print (a[:3])

# 取第三个字符后的所有字符
print (a[2:])

# 取第四个字符后的所有字符
print (a[3:])

# 取第二到第四个字符
print (a[1:4])

# 输出字符串两次
print (a * 2)
# 连接字符串
print (a + "TEST")

[root@localhost 2]# python3 4.3.py 
h
e
d
r
he
hel
llo,word
lo,word
ell
hello,wordhello,word
hello,wordTEST

五、结构控制

5.1 选择控制

非常多的编程语言都会使用 if 关键字作为流程控制,除此之外,Python 3 的流程控制还包括 elifelse 两个关键字,这两个在选择控制中都是可选的。elif 的意思是 else if,增加进一步的判断是否选择该路径。

脚本 5.1.py

#!/usr/bin/env python3

a = int(input("Please enter Number: "))

if a > 10:
    print('a > 10')
elif a == 10:
    print('a == 10')
else:
    print('a < 10')
[root@localhost 2]# python3 5.1.py 
Please enter Number: 99
a > 10

5.2 循环控制

Python 中包含两种循环方式,一种是 for,一种是 while

for 循环主要用在依次取出一个列表中的项目,对列表进行遍历处理。下一节中我们将详细讲解列表的数据结构,这里可以简单理解为一组值。

脚本 5.2.1.py

#!/usr/bin/env python3

strlist = ['hello','word','python3']
for i in strlist:
    print(i)
[root@localhost 2]# python3 5.2.1.py 
hello
word
python3

另外一种循环是 whilewhile 不同于 for 是使用一个表达式作为判断的条件,如果条件为 False 停止循环。

(图片来自菜鸟教程)
avatar
脚本 5.2.2.py

#!/usr/bin/env python3

a = 1
while a < 10:
    print(a)
    a += 2
[root@localhost 2]# python3 5.2.2.py 
1
3
5
7
9

我们在循环控制中,可以使用 breakcontinue 两个关键字

break 表示停止当前循环,continue 表示跳过当前循环轮次中后续的代码,去执行下一循环轮次。

当 a 为 5 的时候循环退出

脚本 5.2.3.py

#!/usr/bin/env python3

for a in range(10):
    if a == 5:
        break
    print(a)
[root@localhost 2]# python3 5.2.3.py 
0
1
2
3
4

当 a 为 50 的时候不执行后续的 print 代码:

脚本 5.2.4.py

#!/usr/bin/env python3

a = 100
while a > 10:
    a -= 10
    if a == 50:
        continue
    print(a)
[root@localhost 2]# python3 5.2.4.py 
90
80
70
60
40
30
20
10

六、异常处理

Python 3 中常见的异常类型:

  • NameError 访问一个未定义的变量
  • SyntaxError 语法错误,这个严格讲算是程序的错误
  • IndexError 对于一个序列,访问的索引超过了序列的范围,可以理解为我的序列里只有三个元素,但要访问第4个
  • KeyError 访问一个不存在的字典 Key,Key 如果不存在字典就会抛出这个异常
  • ValueError 传入无效的参数
  • AttributeError 访问类对象中不存在的属性

6.1 try/except

异常捕捉可以使用 try/except 语句。

如果在执行 try 子句的过程中发生了异常,那么 try 子句余下的部分将被忽略。如果异常的类型和 except 之后的名称相符,那么对应的 except 子句将被执行。

一个 try 语句可能包含多个 except 子句,分别来处理不同的特定的异常。最多只有一个分支会被执行。

(图片来自菜鸟教程)
在这里插入图片描述
脚本 6.1.py

#!/usr/bin/env python3

try:
    x = int(input("请输入一个数字: "))
except ValueError:
    print("您输入的不是数字!")
[root@localhost 2]# python3 6.1.py 
请输入一个数字: a
您输入的不是数字!

6.2 try/except/finally

finally 关键字是用来进行清理工作,经常和 except 一起使用,即无论是正常还是异常,这段代码都会执行。

(图片来自菜鸟教程)
在这里插入图片描述

脚本 6.2.py

#!/usr/bin/env python3

try:
    x = int(input("请输入一个数字: "))
except ValueError:
    print("您输入的不是数字!")
finally:
    print("程序结束")
[root@localhost 2]# python3 6.2.py 
请输入一个数字: a
您输入的不是数字!
程序结束
[root@localhost 2]# python3 6.2.py 
请输入一个数字: 1
程序结束

七、引入模块

在 Python 中我们可以使用 import XXXfrom XXX import YYY 这样的形式来引入某个模块或者模块中的某个函数、类等内容到当前的代码文件中。

from urllib2 import urlopen
本套课程系大喵在**2020年****录制课程,大喵将带着大家使用vscode这款轻量级编辑器神器,快速上手Python高效开发、调试及单元测试的插件扩展和 VSCode IDE环境配置; 什么是 vscode 编辑器? Visual Studio Code(以下简称vscode)是一个轻量且强大的跨平台开源代码编辑器(IDE),支持Windows,Mac OS X和Linux。内置JavaScript、TypeScript和Node.js支持,而且拥有丰富的插件生态系统,可通过插件面板来方便快捷的安装插件来支持javascript、C++、C#、Python、PHP等其他语言。 什么是 python ? Python,它是一门编程语言,截止到目前python已经广泛应用在:无人驾驶、个人助理、金融、电商、医疗、教育等各大领域。尤其是在 Web开发、自动化运维与测试、游戏服务器开发方面有着先天的优势。目前许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA(美国航空航天局)都大量地使用Python。 VSCode + Python VSCode毫无疑问是一款非常优秀的IDE,而Python则无疑是一门使用领域相当广泛,非常强大的高级语言;那我们如何把这两者结合起来,用**美的IDE编写最棒的语言,优雅与**,强强结合,气冲入虹,势不可挡。 课程内容主要包括: 01. 课程内容介绍 02. VSCode IDE 介绍 03. 为什么推荐使用 VSCode IDE  04. Python 语言基础介绍  05. 为什么选择 Python 语言 06. VSCode和Python 强强联手 07. 课程插件扩展介绍 08. Python扩展安装及介绍 09. Python扩展代码测试 10. AREPL安装和介绍 11. AREPL for Python 特点介绍 12. AREPL 代码功能测试 13. autoDocstring 安装和介绍 14. autoDocstring 代码测试使用 15. python test explorer 安装和介绍 16. Python pytest 测试和使用
©️2020 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页