优秀的编程知识分享平台

网站首页 > 技术文章 正文

零基础Python语言学习指南(下篇)

nanyue 2025-03-03 19:34:29 技术文章 8 ℃

登堂入室:
前两篇已掌握Python核心技能,下篇将带你进入真正的开发世界!学习用更专业的编程思维解决问题,并体验Python强大的生态库。


第十二章:面向对象编程(OOP)

12.1 类与对象——现实世界的映射

class Cat:  # 类名首字母大写
    def __init__(self, name, color):  # 构造方法
        self.name = name  # 实例属性
        self.color = color
    
    def meow(self):  # 方法
        print(f"{self.color}的{self.name}:喵~")

# 创建对象
my_cat = Cat("咖啡", "橘色")
my_cat.meow()  # 橘色的咖啡:喵~

12.2 继承与多态

class RobotCat(Cat):  # 继承父类
    def charge(self):  # 扩展新方法
        print(f"{self.name}正在充电...")
    
    def meow(self):  # 重写父类方法
        print(f"{self.name}:哔哔~")

future_cat = RobotCat("小叮当", "银色")
future_cat.meow()  # 小叮当:哔哔~
future_cat.charge()  # 小叮当正在充电...

第十三章:模块与包

13.1 使用标准库

# 时间模块
import time
print(time.strftime("%Y-%m-%d %H:%M:%S"))  # 当前时间

# 数学模块
from math import sqrt
print(sqrt(9))  # 3.0

# 随机模块
import random
print(random.choice(["A", "B", "C"]))  # 随机选一个

13.2 创建自己的模块

  1. 新建 mytools.py:
def check_even(num):
    return num % 2 == 0
  1. 在其他文件中:
import mytools
print(mytools.check_even(8))  # True

13.3 安装第三方库

  1. 在命令行安装:
pip install requests  # 网络请求库
  1. 使用示例:
import requests
response = requests.get("https://api.example.com/data")
print(response.json())  # 获取JSON数据

第十四章:实用开发技巧

14.1 虚拟环境(隔离项目依赖)

# 创建
python -m venv myenv  

# 激活(Windows)
myenv\Scripts\activate.bat

# 激活(Mac/Linux)
source myenv/bin/activate

14.2 调试技巧

# 使用print调试
print(f"变量值:{variable}")

# 使用断言
assert len(list) > 0, "列表不能为空!"

# 使用pdb调试器
import pdb; pdb.set_trace()  # 设置断点

14.3 代码规范(PEP8)

  • 缩进:4个空格
  • 行长:不超过79字符
  • 命名规范:变量/函数:lower_case_with_underscores类名:CapitalizedCase常量:ALL_CAPS

第十五章:实战项目——天气查询工具

import requests

def get_weather(city):
    url = f"http://wthrcdn.etouch.cn/weather_mini?city={city}"
    try:
        response = requests.get(url)
        data = response.json()
        if data["status"] == 1000:
            weather_info = data["data"]["forecast"][0]
            return f"""
            {city}今日天气:
            温度:{weather_info['low']} ~ {weather_info['high']}
            风向:{weather_info['fengxiang']}
            天气:{weather_info['type']}
            """
        return "城市名称有误!"
    except Exception as e:
        return "网络连接失败!"

while True:
    city = input("\n输入要查询的城市(q退出):")
    if city == 'q':
        break
    print(get_weather(city))

第十六章:继续学习路径

16.1 常见方向推荐

方向

推荐库/框架

应用场景

数据分析

pandas, numpy

数据清洗/统计/可视化

人工智能

tensorflow, pytorch

机器学习/深度学习

Web开发

Django, Flask

网站/API开发

自动化办公

openpyxl, pyautogui

Excel操作/桌面自动化

16.2 学习资源推荐

  • 官方文档:docs.python.org

终章总结
你已完成:面向对象 → 模块开发 → 工程实践 → 项目实战
? 尝试为天气查询工具添加「空气质量显示」功能
? 挑战:用面向对象方式重构之前的待办事项管理器

致未来的开发者:
编程是持续精进的手艺,记住:

  1. 遇到报错是正常现象,学会看错误信息
  2. 不要死记代码,理解逻辑更重要
  3. 多参与开源项目,GitHub是你的新战场

愿Python成为你打开数字世界的钥匙!

最近发表
标签列表