Python 基础(二)基础语法

一、环境

环境版本
操作系统CentOS 7.9.2009
Python3.9.7

二、变量

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

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

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

>>> keyword.kwlist
['False', 'None', 'True', '__peg_parser__', 'and', 'as', 'assert', 'async', 'await', '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']

三、数据类型

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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值