简体中文简体中文
EnglishEnglish
简体中文简体中文

Python小项目源码分享:轻松入门与实战提升

2025-01-03 02:34:38

随着Python的普及,越来越多的编程初学者开始接触并学习这门语言。而对于初学者来说,通过实际的小项目来练习编程技巧是一个非常好的方法。本文将分享几个Python小项目的源码,帮助读者从理论到实践,逐步提升自己的编程能力。

一、Python小项目简介

1.计算器项目

计算器是一个基础且实用的Python项目,可以帮助我们学习变量、运算符、循环和函数等基础语法。

2.天气查询项目

天气查询项目是一个实用的Web爬虫项目,可以帮助我们学习如何使用Python进行网络爬取,并了解HTML解析和JSON数据处理。

3.图书管理系统项目

图书管理系统是一个综合性较强的项目,可以帮助我们学习面向对象编程、数据库操作等高级语法。

4.购物车项目

购物车项目是一个简单的Web应用项目,可以帮助我们学习Flask框架、模板渲染和表单处理等知识。

二、Python小项目源码分享

1.计算器项目源码

`python 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): return x / y

def main(): while True: print("1. 加法") print("2. 减法") print("3. 乘法") print("4. 除法") print("5. 退出") choice = input("请输入选项(1-5):") if choice == '5': break if choice in ['1', '2', '3', '4']: num1 = float(input("请输入第一个数:")) num2 = float(input("请输入第二个数:")) if choice == '1': print("结果是:", add(num1, num2)) elif choice == '2': print("结果是:", subtract(num1, num2)) elif choice == '3': print("结果是:", multiply(num1, num2)) elif choice == '4': print("结果是:", divide(num1, num2))

if name == 'main': main() `

2.天气查询项目源码

`python import requests from bs4 import BeautifulSoup import json

def getweather(city): url = f"http://www.weather.com.cn/data/cityinfo/{city}.html" response = requests.get(url) soup = BeautifulSoup(response.text, "html.parser") data = soup.find("div", class="weather") weatherdata = { "city": city, "weather": data.find("p", class="wea").text, "temp": data.find("p", class="tem").text } return weatherdata

if name == 'main': city = input("请输入城市名称:") weatherdata = getweather(city) print(json.dumps(weatherdata, ensureascii=False)) `

3.图书管理系统项目源码

`python class Book: def init(self, id, title, author): self.id = id self.title = title self.author = author

class BookManager: def init(self): self.books = []

def add_book(self, book):
    self.books.append(book)
def remove_book(self, id):
    for book in self.books:
        if book.id == id:
            self.books.remove(book)
            break
def search_book(self, title):
    for book in self.books:
        if book.title == title:
            return book
    return None
def display_books(self):
    for book in self.books:
        print(f"ID: {book.id}, 标题: {book.title}, 作者: {book.author}")

if name == 'main': manager = BookManager() manager.addbook(Book(1, "Python编程快速上手", "埃里克·马瑟斯")) manager.addbook(Book(2, "算法导论", "托马斯·H·考德尔")) manager.displaybooks() manager.removebook(1) manager.displaybooks() book = manager.searchbook("算法导论") if book: print(f"找到书籍:ID: {book.id}, 标题: {book.title}, 作者: {book.author}") else: print("未找到书籍") `

4.购物车项目源码

`python from flask import Flask, rendertemplate, request, redirect, urlfor

app = Flask(name)

products = [ {"id": 1, "name": "苹果", "price": 3.5}, {"id": 2, "name": "香蕉", "price": 2.5}, {"id": 3, "name": "橙子", "price": 4.5} ]

cart = []

@app.route('/') def index(): return render_template('index.html', products=products)

@app.route('/addtocart/<int:productid>') def addtocart(productid): for product in products: if product['id'] == productid: cart.append(product) break return redirect(urlfor('index'))

@app.route('/removefromcart/<int:productid>') def removefromcart(productid): for product in cart: if product['id'] == productid: cart.remove(product) break return redirect(urlfor('index'))

@app.route('/cart') def cartpage(): return rendertemplate('cart.html', cart=cart)

if name == 'main': app.run(debug=True) `

三、总结

本文分享了四个Python小项目的源码,包括计算器、天气查询、图书管理系统和购物车项目。通过这些项目,读者可以学习到Python的基础语法、面向对象编程、网络爬取、数据库操作和Web开发等知识。希望这些源码能够帮助读者在Python学习道路上取得更好的进步。