VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > 数据结构 >
  • 第2章 Python编程基础与环境准备

第2章 Python编程基础与环境准备
2.1 Python语言特性与优势
Python是一种解释型高级编程语言,其设计哲学强调“简洁明了”与“可读性”,核心特性如下:
动态类型机制:变量无需显式声明类型,运行时自动绑定值的类型(如x = 5为整数,x = "hello"转为字符串),灵活度高但需注意类型相关错误。
简洁语法:通过缩进(而非大括号)划分代码块,减少冗余符号;内置丰富的语法糖(如列表推导式、上下文管理器with),用更少代码实现复杂逻辑。
多范式支持:兼容面向对象(类与继承)、函数式(高阶函数、匿名函数lambda)、过程式编程风格,适应不同场景需求。
跨平台与可扩展性:可运行于Windows、Linux、macOS等系统;支持C/C++扩展(通过ctypes或Cython),兼顾开发效率与性能。
丰富的标准库与生态:内置模块覆盖文件I/O、网络通信、数据处理等基础功能;第三方库(如numpy、pandas、requests)进一步扩展应用领域。
2.2 Python基础语法回顾
2.2.1 变量与数据类型
变量是存储数据的命名容器,命名需遵循规则:只能包含字母、数字、下划线,且不能以数字开头(如age2合法,2age非法),区分大小写(Age与age是不同变量)。
Python核心数据类型包括:
整数(int):无长度限制的整数,支持十进制(123)、二进制(0b101)、八进制(0o17)、十六进制(0x1f)表示。
浮点数(float):带小数点的数值(3.14)或科学计数法(1e-3即0.001),精度受限于双精度浮点数标准(约15-17位有效数字)。
字符串(str): Unicode字符序列,用单引号('hello')、双引号("world")或三引号('''多行文本''')定义,不可修改(修改需创建新字符串)。
布尔值(bool):仅包含True(1)与False(0),用于逻辑判断,支持and(与)、or(或)、not(非)运算。
2.2.2 运算符与表达式
Python支持多种运算符,按功能分为:
算术运算符:+(加)、-(减)、*(乘)、/(除,结果为float)、//(整除,向下取整)、%(取余)、**(幂运算)。
例:5 // 2 = 2,5 % 2 = 1,2 **3 = 8。

比较运算符:==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于),返回布尔值。
例:3 > 5 → False,"abc" == "abc" → True。

赋值运算符:=(基础赋值)、+=(累加赋值,如x += 3等价于x = x + 3)、*=(累乘赋值)等。
逻辑运算符:and(短路与,前为False则不执行后项)、or(短路或,前为True则不执行后项)、not(逻辑非)。
例:False and (1/0) → False(避免除零错误),True or (1/0) → True。
2.2.3 控制流
条件语句(if-elif-else)用于根据条件执行不同代码块:
python

	score = 85
	if score >= 90:
	print("优秀")
	elif score >= 60:
	print("及格")
	else:
	print("不及格")

循环语句用于重复执行代码块:
for循环:遍历序列(如列表、字符串)或可迭代对象:
python

	for char in "Python":
	print(char, end=" ") # 输出:P y t h o n

配合range()生成整数序列:for i in range(5)(i=0,1,2,3,4)。

while循环:当条件为True时持续执行,需避免无限循环:
python

	count = 0
	while count < 3:
	print("循环中")
	count += 1 # 计数变量更新,避免无限循环

异常处理(try-except)用于捕获并处理运行时错误,防止程序崩溃:
python

	try:
	result = 10 / 0 # 可能触发除零错误
	except ZeroDivisionError:
	print("错误:除数不能为零") # 捕获特定异常并处理
	finally:
	print("无论是否出错,都会执行") # 可选,用于资源释放(如关闭文件)

2.3 Python面向对象编程基础
2.3.1 类与对象
类(class) 是对象的模板,定义对象的属性(数据)与方法(操作);对象是类的实例,具有类定义的属性和方法。
类的定义与实例化:
python

	class Student:
	# 构造方法:初始化对象属性,self为实例自身引用
	def __init__(self, name, age):
	self.name = name # 实例属性
	self.age = age
	
	# 实例方法:操作实例属性
	def introduce(self):
	return f"我叫{self.name},今年{self.age}岁"
	
	# 实例化对象:调用类并传入参数
	stu = Student("张三", 20)
	print(stu.introduce()) # 输出:我叫张三,今年20岁

类属性与实例属性:类属性属于类本身,所有实例共享;实例属性仅属于单个实例:
python

	class Car:
	wheel_count = 4 # 类属性:所有汽车都有4个轮子
	
	def __init__(self, color):
	self.color = color # 实例属性:每个汽车颜色可能不同
	
	car1 = Car("红色")
	car2 = Car("蓝色")
	print(car1.wheel_count) # 输出:4(共享类属性)
	print(car1.color) # 输出:红色(实例属性)

2.3.2 继承与多态
继承允许子类复用父类的属性和方法,并扩展新功能。通过class 子类(父类):定义继承关系:
python

	class Animal:
	def eat(self):
	print("动物需要进食")
	
	class Dog(Animal): # 继承Animal类
	def bark(self): # 子类新增方法
	print("汪汪叫")
	
	def eat(self): # 重写父类方法(多态)
	print("狗吃骨头")
	
	dog = Dog()
	dog.eat() # 输出:狗吃骨头(调用重写的方法)
	dog.bark() # 输出:汪汪叫(子类新增方法)

super()函数用于调用父类的方法,避免硬编码父类名:
python

	class Cat(Animal):
	def eat(self):
	super().eat() # 调用父类Animal的eat方法
	print("猫吃鱼")
	
	cat = Cat()
	cat.eat() # 输出:动物需要进食 猫吃鱼(先执行父类方法,再扩展)

多态指不同子类对同一方法的实现不同,调用时根据对象类型动态选择方法:
python

	def feed(animal):
	animal.eat() # 传入不同动物对象,执行不同eat方法
	
	feed(Dog()) # 输出:狗吃骨头
	feed(Cat()) # 输出:动物需要进食 猫吃鱼

2.4 Python内置数据结构与工具
2.4.1 序列类型
序列类型是元素按顺序排列的集合,支持索引(访问单个元素)和切片(访问子序列),包括列表、元组、字符串。
列表(list):可变序列,元素可修改,用[]定义:
常用操作:
oappend(x):末尾添加元素x(O(1));
oinsert(i, x):在索引i处插入x(O(n),需移动后续元素);
opop(i):删除并返回索引i处元素(默认删除末尾,O(1);删除中间元素O(n));
o切片:list[start


相关教程