目录

  • 单元1  初识Python
    • ● 任务 1.1  计算机程序设计语言概述
    • ● 任务 1.2 Python语言
    • ● 任务1.3 Python开发环境搭建
    • ● 任务 1.4 Python的简单使用
    • ● 知识拓展
    • ● 思考与练习
  • 单元2   Python基础知识
    • ● 任务2.1 Python程序基本结构
    • ● 任务2.2  标准输入输出
    • ● 任务2.3  Python对象
    • ● 任务2.4 Python变量
    • ● 任务2.5  数据类型
    • ● 任务2.6 字符串
    • ● 任务2.7 运算符
    • ● 知识拓展
    • ● 思考与练习
  • 单元3   程序流程控制
    • ● 任务3.1  顺序结构
    • ● 任务3.2 选择结构
    • ● 任务3.3  循环结构
    • ● 知识拓展
    • ● 思考与练习
  • 单元4  Python序列
    • ● 任务4.1  序列
    • ● 任务4.2 列表
    • ● 任务4.3  用于序列操作的常用内置函数
    • ● 任务4.4   元组
    • ● 任务4.5  字典
    • ● 任务4.6  集合
    • ● 知识拓展
    • ● 思考与练习
  • 单元5  函数
    • ● 任务5.1 函数的定义与调用
    • ● 任务5.2 函数的参数
    • ● 任务5.3   参数类型
    • ● 任务5.4  变量作用域
    • ● 任务5.5   嵌套调用与递归调用
    • ● 任务5.6  lambda表达式
    • ● 任务5.7  模块
    • ● 知识拓展
    • ● 思考与练习
  • 单元6  异常处理
    • ● 任务6.1 异常处理的基本概念
    • ● 任务6.2 Python的异常处理语句
    • ● 任务6.3  自定义异常
    • ● 知识扩展
    • ● 思考与练习
  • 单元7  文件操作
    • ● 任务7.1  文件的分类
    • ● 任务7.2  文件对象
    • ● 任务7.3  文本文件
    • ● 任务7.4  二进制文件
    • ● 知识拓展
    • ● 思考与练习
  • 单元8  面向对象程序设计
    • ● 任务8.1 面向对象技术的基本概念
    • ● 任务8.2 类与对象
    • ● 任务8.3 类的继承
    • ● 任务8.4 方法重写
    • ● 知识扩展
    • ● 思考与练习
  • 单元9  网络编程基础
    • ● 任务9.1  Socket概述
    • ● 任务9.2   Socket对象内建方法
    • ● 任务9.3  Socket编程实例
    • ● 任务9.4    PythonInternet模块
    • ● 知识扩展
    • ● 思考与练习
  • 单元10    Python标准库及第三方库
    • ● 任务10.1 Python标准库
    • ● 任务10.2 Python第三方库的下载及安装
    • ● 任务10.3  Python第三方库举例
    • ● 知识扩展
    • ● 思考与练习
  • 任务11 用户图形界面(GUI)
    • ● 任务11.1 图形用户界面概述
    • ● 任务11.2 窗体容器和组件
    • ● 任务11.3 界面布局管理
    • ● 任务11.4 文本框组件
    • ● 任务11.5 其他组件
    • ● 任务11.6菜单与对话框
    • ● 任务11.7 鼠标键盘事件
    • ● 知识扩展
    • ● 思考与练习
  • 任务12   Python操作数据库
    • ● 数据库基础
    • ● 结构化查询语言SQL
    • ● Python操作数据库核心API
    • ● Python操作数据库案例
    • ● sqlite3 实训练习案例
    • ● pymysql 数据库实训案例
    • ● 小结  思考与练习
  • 习题解析(线上作业等参考解答)
    • ● 第一单元 初识Python  作业
    • ● 第二单元  Python基础(作业)
    • ● 第三单元  程序流程控制 作业(1)
    • ● 第三单元  程序流程控制  作业(2)
    • ● 第四单元  Python序列   作业
    • ● 第五单元   函数   作业
    • ● 单元六  异常处理  作业
    • ● 单元七、八  文件操作,GUI,面向对象
    • ● 单元九   网络编程基础
    • ● 线上习题解析
    • ● 编程训练
  • 应用题解(综合编程技术)
    • ● 《食品识别小专家》
    • ● 格式输出
    • ● 习题选解
    • ● 每日一帖
    • ● 模拟基本信息
    • ● 模拟基本数据
    • ● 数制转换
    • ● 定制每日运动计划
    • ● 《简易购物系统》
  • 课程章节测验
    • ● 第1次章节测验
  • 复习
    • ● Python基础知识总结
  • 第三方库TOOLS(备用)
    • ● 库模块(可下载)
    • ● 供考查备用的库模块(可下载)
Python基础知识总结

Python基础知识总结

一、Python的优缺点

优点:

1. 简单,易学,免费,开源

2. 高级语言,解释型语言

3. 可移植性,可拓展性,可读性

4. 面向对象,丰富的库

缺点:

1. 执行效率慢

2. GIL锁限制并发

3. 源代码加密困难


二、Python的注释

1. 单行注释(#)

# 这是单行注释

2. 多行注释(''' '''/""" """)

三个单引号或者三个双引号必须互相匹配,不能三个单引号和三个双引号(注意不是中文的引号)

'''
    这是多行注释1
    这是多行注释2
'''

小总结

通过用自己熟悉的语言,在程序中对某些代码进行标注说明,这就是注释的作用,能够大大增强程序的可读性。


三、变量以及类型

1. 变量的定义

程序就是用来处理数据的,而变量就是用来存储数据的。在python中,存储一个数据,需要一个叫做变量的东西,如下示例

num = 100 # num就是一个变量

如何查看变量在内存中的地址?

z=1
print(id(z))


2. 变量的类型

为了更充分的利用内存空间以及更有效率的管理内存,变量是有不同的类型的,如下所示

avatar


四、标识符和关键字

1. 标识符

1.1 什么是标识符

开发人员在程序中自定义的一些符号和名称,标识符是自己定义的,如变量名 、函数名等

1.2 标识符的规则

标识符由字母、下划线和数字组成,且数字不能开头

正确 from12

错误 12form

补充

python中的标识符是区分大小写的

avatar

1.3 命名规则

· 见名知意

起有意义的名字,一眼便知其意思,可以提高代码的可读性,比如:老师 就可以用 teacher

· 驼峰命名法

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

  2. 大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName、LastName

  3. 下划线_: 还有一种命名法是用下划线“_”来连接所有的单词,比如send_buf

2. 关键字

2.1 什么是关键字

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

2.2 python中的关键字

and     as      assert     break     class      continue    def     del
elif    else    except     exec      finally    for         from    global
if      in      import     is        lambda     not         or      pass
print   raise   return     try       while      with        yield

五、Python中的 输出 和 输入

1. 输出

1.1 普通的输出

print('hello world')

1.2 格式化输出

1.2.1 什么是格式化

看如下代码

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

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

1.2.2 格式化的作用

字符串格式化可以简化程序,可以将多个结果一起输出

1.2.3 常用的格式符号

下图给出了python中的格式符号以及对应的转换类型

avatar

1.3 换行输出

在输出的时候,如果有\n那么,此时\n后的内容会在另外一行显示

print('123---')  # 会在一行显示
print('123\n---')  # ---会在123的下一行显示

2. 输入

input()

在python3中,我们使用input()从键盘中获取数据,获取到的数据会存放到等号左边的变量中

但在python2中,我们所使用的是raw_input()


六、运算符

1. 算术运算符

python中,在进行混合运算的时候,运算符会根据优先级的顺序进行计算

优先级顺序:** 大于 * / % 大于 + -,我们可以使用()来处理优先级的问题,就像我们生活中的数学运算那样
下图为python中的运算符介绍
avatar

2. 赋值运算符

avatar

· 复合赋值运算符

avatar


七、数据类型转换

· 常用的数据类型转换

avatar
使用上图中的函数可以将原本的数据类型转换成另一种数据类型,如果我们想对一个
元组进行添加数据,那么我们可以先将它转换成列表,从而更好操作

a = (1, 2)  # 先将元组a转换成列表b
b = list(a)  # b = [1, 2]
b.append(3)  # b = [1, 2, 3]
a = tuple(b)  # 再将添加好数据的列表b转换成元组a, a = (1, 2, 3)

八、 判断语句和循环语句

1. 判断语句

1.1 if

格式
if 要判断的条件(使用比较运算符):
条件成立时,要做的事
demo:

age = 15
if age > 12:  # 如果变量age所存储的值大于12,那么条件成立,输出下面的话
    print('我可以骑自行车了')

1.1.2 比较(关系)运算符

avatar
这些运算符用于编写if语句,需要对某些数据进行比较,判断时使用

1.1.3 逻辑运算符

avatar
这些逻辑运算符是在编写一个if判断语句需要同时满足某些条件时使用
demo

a = 10 
b = 5 
if a > b and a % b == 0:  # 如果a大于b, 并且a可以整除b
    # 如果条件成立,格式化输出a,b和 a除b的结果
    print('%d 除以 %d 的结果为 %d' %(a, b, a/b))

1.2 if-else

if-else的使用格式
if 条件:
条件成立时要做的事
else:
条件不成立时要做的事
demo

age = 18

if age >= 18:  # 判断如果年龄到18或者超过18了,就打印‘可以学车了’
    print('可以学车了')
else:  # 如果上面的判断不成立,年龄小于18,那么就打印‘等成年再来吧’
    print('等成年再来吧')

1.3 elif

elif的作用

之前的if语句,如果有多个,那么程序会从上到下逐个判断,即使条件在之前已经成立,我们不再需要判断了,程序还是会继续判断,会降低执行的效率,所以我们可以使用elif
elif的作用是在上一个if判断不成立时,进行自己的判断语句,如果在之前的判断中成立,则不执行,所以elif必须要写在if语句的下面,不能够单独使用elif。而又因为else是等待所有的判断都不成立的时候执行的,所以else要写在if和elif的后面
demo

age = 10

if age > 18:  # 判断如果成年,这打印'成年了'
    print('成年了')
elif age > 10:  # 如果上面的if成立,则不执行elif;如果没有成立,再进行判断elif中的条件
    print('要有家长陪同')
else:  # 如果if和elif的条件都不成立,则打印'好好在家吧',如果有其中一个成立就不执行
    print('好好在家吧')

1.4 if嵌套

1.4.1 if嵌套的格式

if 条件1:
满足条件1时 做的事

if 条件2:
    在满足条件1的情况下,满足条件2时 做的事

说明
· 外层的if判断,也可以是if-else
· 内层的if判断,也可以是if-else
· 根据实际开发的情况,进行选择
demo

ticket = 1     # 用1代表有车票,0代表没有车票
knife = 9     # 刀子的长度,单位为cm

if ticket == 1:
    print("有车票,可以进站")
    if knife < 10:
        print("通过安检")
        print("终于可以见到Ta了,美滋滋~~~")
    else:
        print("没有通过安检")
        print("刀子的长度超过规定,等待警察处理...")
else:
    print("没有车票,不能进站")
    print("亲爱的,那就下次见了")

2. 循环语句

2.1 使用场景

一般情况下,需要多次重复执行的代码,都可以用循环的方式来完成

小总结

· while和if的用法基本类似,区别在于:if 条件成立,则执行一次; while 条件成立,则重复执行,直到条件不成立为止。
· 循环不是必须要使用的,但是为了提高代码的重复使用率,所以有经验的开发者都会采用循环

写代码
a.实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败!

 



name=input('name:').strip()
pwd=input('pwd').strip()
if name=='seven' and pwd=='123' :
   print('ok')
else:
   print('error')


b.实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次


while循环:
count=1
while count<=3 :
   name = input('name:').strip()
   pwd = input('pwd').strip()

   if name=='seven' and pwd=='123' :
       print('ok')
   else:
       print('error')
       count += 1
for循环:
for count in range(3) :
   name = input('name:').strip()
   pwd = input('pwd').strip()

   if name=='seven' and pwd=='123' :
       print('ok')
   else:
       print('error')
       count += 1

c.实现用户输入用户名和密码,当用户名为 seven 或 alex 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次


while 循环
count =1
while count<=3 :
   name = input('name: ')
   pwd = input('pwd: ')
   if name == 'seven' and pwd == '123'  or name == 'alex' and pwd == '123':
       print('ok')
   else :
       print('error')
       count+=1
for循环
for count in range(3)  :
   name = input('name: ')
   pwd = input('pwd: ')
   if name == 'seven' and pwd == '123'  or name == 'alex' and pwd == '123':
       print('ok')
   else :
       print('error')
       count+=1

11、写代码
a. 使用while循环实现输出2-3+4-5+6...+100 的和

 

count=2
num=0
while count<=100 :
   if count % 2 ==0 :
       num=count+num
       count+=1
   else:
       num=num-count
       count+=1
print(num)

b. 使用for循环和range实现输出 1-2+3-4+5-6...+99 的和
 num=0
count=1
for count in range(100) :
   if count % 2 == 0 :
       num=num - count
   else :
       num=num+count
print(num)

 

 c. 使用 while 循环实现输出 1,2,3,4,5, 7,8,9, 11,12

 

count=1
while count < 13 :
   if count !=6 :
       if count !=10 :
           print(count)

   count+=1

d. 使用 while 循环实现输出 1-100 内的所有奇数

 

for i in range(101) :
   if i %2 != 0 :
       print(i)


count=0
while count<100 :
   if count %2 != 0 :
       print(count)
   count += 1

 

 

e. 使用 while 循环实现输出 1-100 内的所有偶数

 

for i in range(100) :
   if i %2 == 0:
       print(i)


count=0
while count<100 :
   if count%2 == 0 :
       print(count)
   count+=1