继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Python 编程基础与进阶

MMTTMM
关注TA
已关注
手记 471
粉丝 65
获赞 364
引言

Python 是一种高级编程语言,以其简洁和易读的语法而闻名。Python 广泛应用于各种领域,包括但不限于 Web 开发、数据分析、人工智能、机器学习、科学计算等。Python 的可读性强,代码结构清晰,使得它成为初学者和专家的首选语言之一。

Python 安装与环境配置

Python 可以在多个操作系统上运行,包括 Windows、Linux 和 macOS。Python 官方网站提供了不同版本的 Python,包括最新的稳定版和开发版。为了开始使用 Python,你需要安装 Python 解释器。

安装 Python

  1. 访问 Python 官方网站(https://www.python.org/)。
  2. 在下载页面找到最新版本的 Python,选择适用于你操作系统的安装包。
  3. 运行下载的安装程序,并按照提示完成安装。
  4. 在安装过程中,确保选择“Add Python to PATH”选项,这将使 Python 可以从命令行使用。

配置环境

安装完成后,可以通过命令行验证 Python 是否安装成功。

python --version

或者

python3 --version

上述命令会输出 Python 的版本信息。

Python 基础语法

代码结构

Python 的代码结构相对简单,不使用分号作为语句结束符,而是在块的结束时使用缩进。Python 使用冒号来指示新块的开始。

if 10 > 5:
    print("10 is greater than 5")
    print("This is still in the if block")
print("This is outside the if block")

变量与类型

Python 是一种动态类型语言,这意味着你可以直接使用变量而无需声明其类型。Python 中的基本类型包括整型(int)、浮点型(float)、字符串(str)等。

a = 10  # 整型
b = 3.14  # 浮点型
c = "Hello, World!"  # 字符串
d = True  # 布尔型
e = None  # NoneType

字符串操作

字符串是 Python 中最基本的数据类型之一。字符串支持多种操作,如拼接、切片和格式化。

# 字符串拼接
str1 = "Hello"
str2 = "World"
result = str1 + " " + str2
print(result)  # 输出: Hello World

# 字符串切片
text = "Python Programming"
print(text[0:6])  # 输出: Python
print(text[7:14])  # 输出: Programming

# 字符串格式化
name = "Alice"
age = 25
print(f"My name is {name} and I am {age} years old.")  # 输出: My name is Alice and I am 25 years old.
Python 控制结构

Python 中的控制结构包括条件语句(if 语句)、循环语句(for 和 while 循环)等。

条件语句

条件语句用于根据条件的真假执行不同的代码。

number = 10
if number > 0:
    print("The number is positive")
elif number == 0:
    print("The number is zero")
else:
    print("The number is negative")

循环语句

循环语句允许我们重复执行某些代码块,直到满足特定条件。

for 循环

for 循环常用于遍历序列(列表、元组或字符串)。

for i in range(5):
    print(i)  # 输出: 0, 1, 2, 3, 4

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)  # 输出: apple, banana, cherry

while 循环

while 循环会一直执行,直到条件不再满足。

count = 0
while count < 5:
    print(count)  # 输出: 0, 1, 2, 3, 4
    count += 1
数据结构

Python 中的数据结构包括列表(list)、元组(tuple)、字典(dict)、集合(set)等。

列表

列表是一种可变序列,可以存储多个元素。

my_list = [1, 2, 3, 4, 5]
my_list.append(6)
my_list.remove(3)
print(my_list)  # 输出: [1, 2, 4, 5, 6]

元组

元组是不可变的序列,常用于固定的数据集合。

my_tuple = (1, 2, 3, 4, 5)
print(my_tuple[0])  # 输出: 1

# 元组操作实例
my_tuple = (1, 2, 3, 4, 5)
print(my_tuple[1:3])  # 输出: (2, 3)

字典

字典是一种键值对的数据结构,用于存储可变的数据。

my_dict = {"name": "Alice", "age": 25}
print(my_dict["name"])  # 输出: Alice
my_dict["age"] = 26
print(my_dict)  # 输出: {'name': 'Alice', 'age': 26}

# 字典操作实例
my_dict = {"name": "Alice", "age": 25}
my_dict["job"] = "Engineer"
print(my_dict)  # 输出: {'name': 'Alice', 'age': 25, 'job': 'Engineer'}

集合

集合是一种不重复的元素集合。

my_set = {1, 2, 3, 4, 5}
my_set.add(6)
print(my_set)  # 输出: {1, 2, 3, 4, 5, 6}
my_set.remove(3)
print(my_set)  # 输出: {1, 2, 4, 5, 6}

# 集合操作实例
my_set = {1, 2, 3, 4, 5}
my_set.add(6)
print(my_set)  # 输出: {1, 2, 3, 4, 5, 6}
my_set.remove(3)
print(my_set)  # 输出: {1, 2, 4, 5, 6}
函数与模块

函数定义与调用

函数是可重用的代码块,用于执行特定的任务。

def add_numbers(a, b):
    return a + b

result = add_numbers(3, 4)
print(result)  # 输出: 7

模块导入

Python 中的模块允许你组织代码,便于重用和维护。

import math

result = math.sqrt(16)
print(result)  # 输出: 4.0
错误处理与异常

Python 中的异常处理机制允许你捕获并处理程序中的错误。

try:
    result = 10 / 0
except ZeroDivisionError:
    print("Attempted to divide by zero")
except Exception as e:
    print(f"An error occurred: {e}")
else:
    print("No errors occurred")
finally:
    print("This block will always run")
文件操作

Python 中的文件操作包括打开、读取、写入和关闭文件。

# 写入文件
with open("example.txt", "w") as file:
    file.write("Hello, world!\n")
    file.write("This is a test file.\n")

# 读取文件
with open("example.txt", "r") as file:
    content = file.read()
    print(content)  # 输出: Hello, world!
                    #        This is a test file.
类与对象

Python 是一种面向对象的语言,支持类和对象的概念。

类定义

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def greet(self):
        print(f"Hello, my name is {self.name} and I am {self.age} years old.")

# 创建对象
p1 = Person("Alice", 25)
p1.greet()  # 输出: Hello, my name is Alice and I am 25 years old.

继承与多态

class Student(Person):
    def __init__(self, name, age, grade):
        super().__init__(name, age)
        self.grade = grade

    def study(self):
        print(f"{self.name} is studying in grade {self.grade}.")

s1 = Student("Bob", 20, 2)
s1.greet()  # 输出: Hello, my name is Bob and I am 20 years old.
s1.study()  # 输出: Bob is studying in grade 2.

类与实例

面向对象编程(OOP)是一种编程范式,它将数据和方法组织成对象。类是对象的蓝图,而对象是类的实例。

class Car:
    def __init__(self, make, model, year):
        self.make = make
        self.model = model
        self.year = year
        self.odometer_reading = 0

    def get_descriptive_name(self):
        long_name = f"{self.year} {self.make} {self.model}"
        return long_name.title()

    def read_odometer(self):
        print(f"This car has {self.odometer_reading} miles on it.")

my_new_car = Car("Toyota", "Corolla", 2021)
print(my_new_car.get_descriptive_name())  # 输出: 2021 Toyota Corolla
my_new_car.read_odometer()  # 输出: This car has 0 miles on it.

继承与多态

继承允许子类继承父类的属性和方法。多态允许子类重写父类的方法。

class ElectricCar(Car):
    def __init__(self, make, model, year):
        super().__init__(make, model, year)
        self.battery_size = 60

    def describe_battery(self):
        print(f"This car has a {self.battery_size}-kWh battery.")

my_tesla = ElectricCar("Tesla", "Model S", 2020)
print(my_tesla.get_descriptive_name())  # 输出: 2020 Tesla Model S
my_tesla.describe_battery()  # 输出: This car has a 60-kWh battery.
高级主题

装饰器

装饰器是一种特殊类型的函数,可以修改其他函数的功能或行为。

def my_decorator(func):
    def wrapper():
        print("Something is happening before the function is called.")
        func()
        print("Something is happening after the function is called.")
    return wrapper

@my_decorator
def say_whee():
    print("Whee!")

say_whee()

# 更复杂的装饰器实例
def uppercase_decorator(func):
    def wrapper():
        return func().upper()
    return wrapper

@uppercase_decorator
def say_hello():
    return "hello, world"

print(say_hello())  # 输出: HELLO, WORLD

生成器

生成器是一种特殊的迭代器,可以在运行时生成值,而不是一次性生成所有值。

def count_up_to(n):
    count = 1
    while count <= n:
        yield count
        count += 1

for number in count_up_to(5):
    print(number)  # 输出: 1, 2, 3, 4, 5

# 更复杂的生成器实例
def fibonacci(n):
    a, b = 0, 1
    while a < n:
        yield a
        a, b = b, a + b

for num in fibonacci(10):
    print(num)  # 输出: 0, 1, 1, 2, 3, 5, 8

异步编程

异步编程允许你写非阻塞的代码,从而提高程序的效率。

import asyncio

async def my_coroutine():
    print("Starting coroutine")
    await asyncio.sleep(1)
    print("Coroutine ended")

async def main():
    await my_coroutine()

asyncio.run(main())
Python 库与框架

Python 拥有庞大的库和框架生态系统,支持各种应用场景。

Web 开发

  • Flask:轻量级的 Web 框架。
  • Django:全功能的 Web 框架。
  • FastAPI:高性能的 Web 框架。

数据分析

  • Pandas:数据分析和处理库。
  • NumPy:数值计算库。
  • Matplotlib:数据可视化库。

机器学习

  • Scikit-learn:机器学习库。
  • TensorFlow:深度学习库。
  • PyTorch:深度学习库。
结语

Python 是一种强大而灵活的编程语言,适用于多种应用场景。通过学习 Python 的基础语法、数据结构、函数、类、异常处理等知识点,你将能够编写出高效、可读性强的代码。希望本文能为你学习 Python 提供帮助。如果你是初学者,建议从基础语法开始学习,并尝试编写简单的程序来巩固所学的知识。如果你已经有一定的编程经验,可以深入学习 Python 的高级特性,如装饰器、生成器等,以提高你的编程技能。

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP