Python简介
Python的发展历程
Python于1991年由Guido van Rossum开发,旨在提供一种易于学习、使用和维护的通用编程语言。Python名字来源于《蒙斯特·德·斯科布里安》中的一部科幻小说《The Adventure of the管理者》中的角色,意为“Python”。
为什么选择Python
Python以其简洁的语法、丰富的库支持和灵活的特性,成为了许多开发者首选的编程语言。它特别适合初学者,因为它的代码可读性高,易于理解。同时,Python在Web开发、数据科学、人工智能、机器学习等领域有着广泛的应用。
Python的主要应用领域
- Web开发:使用Flask或Django框架构建Web应用。
- 数据分析:利用Pandas、NumPy和Matplotlib进行数据处理与可视化。
- 机器学习:通过TensorFlow、PyTorch等库进行模型构建和训练。
- 自动化脚本:编写简洁高效的自动化任务脚本。
变量与数据类型
# 定义变量
name = "Alice"
age = 30
is_student = False
# 打印变量
print(name)
print(age)
print(is_student)
控制结构
# 条件语句
if age > 18:
print("成年")
else:
print("未成年")
# 循环
for i in range(5):
print(i)
# 使用while循环
count = 0
while count < 5:
print(count)
count += 1
函数与模块
# 定义函数
def greet(name):
print(f"Hello, {name}!")
# 调用函数
greet("Alice")
# 导入模块
import random
# 使用模块函数
print(random.randint(1, 10))
Python编程实践
使用IDLE或Jupyter Notebook进行编程
- IDLE:Python自带的集成开发环境,适合初学者。
- Jupyter Notebook:在线或离线使用,支持Markdown、代码和可视化。
实战案例:编写一个简单的计算器程序
def add(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x, y):
return x * y
def divide(x, y):
if y == 0:
return "Error: Division by zero is not allowed"
else:
return x / y
# 用户输入
print("选择运算:")
print("1.加法")
print("2.减法")
print("3.乘法")
print("4.除法")
choice = input("输入你的选择(1/2/3/4): ")
num1 = float(input("输入第一个数字: "))
num2 = float(input("输入第二个数字: "))
if choice == '1':
print(num1, "+", num2, "=", add(num1, num2))
elif choice == '2':
print(num1, "-", num2, "=", subtract(num1, num2))
elif choice == '3':
print(num1, "*", num2, "=", multiply(num1, num2))
elif choice == '4':
print(num1, "/", num2, "=", divide(num1, num2))
else:
print("无效输入")
Python数据结构
列表、元组、字典和集合的使用
# 列表
fruits = ['apple', 'banana', 'cherry']
print(fruits)
# 元组
coordinates = (1, 2, 3)
print(coordinates)
# 字典
person = {'name': 'Alice', 'age': 30}
print(person)
# 集合
numbers = {1, 2, 3, 4}
print(numbers)
访问和修改数据结构的方法
# 对列表进行修改
fruits.append('orange')
print(fruits)
# 字典的键值修改
person['age'] = 31
print(person)
# 集合的元素添加与移除
numbers.add(5)
print(numbers)
numbers.remove(3)
print(numbers)
数据结构之间的转换
# 字典转换为列表
list_from_dict = list(person.items())
print(list_from_dict)
# 转换为JSON格式
import json
json_data = json.dumps(person)
print(json_data)
Python面向对象编程
类和对象的概念
class Car:
def __init__(self, make, model, year):
self.make = make
self.model = model
self.year = year
def start(self):
print(f"The {self.year} {self.make} {self.model} is starting.")
# 创建对象
my_car = Car('Toyota', 'Camry', 2023)
my_car.start()
封装、继承和多态
class Vehicle:
def __init__(self, speed):
self.speed = speed
def accelerate(self):
print(f"Speeding up to {self.speed} mph.")
class Car(Vehicle):
def __init__(self, speed, num_doors):
super().__init__(speed)
self.num_doors = num_doors
def open_door(self):
print(f"Opening one of the {self.num_doors} doors.")
electric_car = Car(80, 4)
electric_car.accelerate()
electric_car.open_door()
Python项目实践
选择一个小型项目进行实施
假设项目是创建一个简单的任务提醒应用,该应用可以添加、删除任务,并在给定时间提醒用户。
分析需求、设计解决方案
- 需求:用户可以添加任务,指定完成时间,系统在任务到期前一小时提醒。
- 解决方案:使用列表存储任务,使用时间模块处理时间。
代码编写与测试
import time
from datetime import datetime, timedelta
class TaskReminder:
def __init__(self):
self.tasks = []
def add_task(self, description, deadline):
task = {'description': description, 'deadline': deadline, 'completed': False}
self.tasks.append(task)
print(f"Task added: {description}")
def remove_task(self, index):
if 0 <= index < len(self.tasks):
del self.tasks[index]
print("Task removed successfully")
else:
print("Invalid task index")
def notify(self):
now = datetime.now()
for task in self.tasks:
deadline = datetime.strptime(task['deadline'], "%Y-%m-%d %H:%M")
if deadline - now <= timedelta(hours=1) and not task['completed']:
print(f"Reminder: {task['description']} is due soon!")
# 使用
reminder = TaskReminder()
reminder.add_task("Do shopping", "2023-10-01 14:00")
reminder.add_task("Submit project", "2023-10-05 10:00")
reminder.add_task("Finish report", "2023-10-07 16:30")
reminder.notify()
Python学习:轻松入门的编程之旅
通过本教程,你已经掌握了Python的基础知识和一些高级特性,为未来的项目打下了坚实的基础。Python的灵活性和易用性使其成为了终身学习和探索的宝贵工具。探索Python的更多资源,如在线课程、实战项目和社区论坛,将持续提升你的技能。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦