37创客科创中心

 找回密码
 立即注册
查看: 1530|回复: 4

240804 python课程

  [复制链接]

194

主题

324

帖子

2399

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2399
发表于 2024-8-4 09:34:07 | 显示全部楼层 |阅读模式



240822文件下载


240818文件下载



导入库文件:pip install -r P815.txt


240815开始文件下载:压缩包解压到自己的项目下


240813文件下载







240811文件下载







app808.py代码如下:
  1. # 第一步:安装flask,在终端执行如下指令:pip install flask
  2. # 第二步:导入库文件
  3. # *代表库的所有功能模块
  4. # 第三步:实例化一个app
  5. # import flask as F
  6. # AP=F.Flask(__name__)
  7. # from flask import Flask
  8. # 保存:ctrl+s;剪切:ctrl+X;复制:ctrl+c;粘贴:ctrl+v;格式化代码:ctrl+alt+L
  9. from flask import Flask,render_template,render_template_string,redirect, url_for, request, flash
  10. # UI网站界面:pip install bootstrap-flask     错误:pip install flask-bootstrap
  11. from flask_bootstrap import Bootstrap5, SwitchField
  12. from flask_wtf import FlaskForm, CSRFProtect # 表单: pip install flask-wtf

  13. from flask_sqlalchemy import SQLAlchemy # 数据模型:pip install flask-sqlalchemy
  14. from flask_login import LoginManager, UserMixin, login_user, login_required, logout_user, current_user # 登录:pip install flask-login

  15. app = Flask(__name__)# 实例化一个app
  16. app.config["SECRET_KEY"] = "20200808"
  17. app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///app808.db"
  18. app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = False

  19. db = SQLAlchemy(app)# 实例化数据模型
  20. bootstrap = Bootstrap5(app) # 实例化UI网站界面
  21. csrf = CSRFProtect(app)# 表单实例化

  22. # 定义一个用户模型
  23. class User(UserMixin,db.Model):
  24.     id = db.Column(db.Integer, primary_key=True)
  25.     username = db.Column(db.String(80), unique=True, nullable=False)
  26.     email = db.Column(db.String(120))
  27.     password = db.Column(db.String(120), nullable=False)

  28. db.create_all() # 创建数据表

  29. @app.route('/initdb')
  30. # @login_required
  31. def initdb():
  32.     db.drop_all()
  33.     db.create_all()
  34.     for i in range(10):  #
  35.         u = User(
  36.             username=f'37ck{i + 1}',
  37.             password=f'20200808'
  38.         )
  39.         db.session.add(u)
  40.     db.session.commit()
  41.     return "数据库初始化完成"

  42. # 实例化登录管理器
  43. login_manager = LoginManager()
  44. login_manager.init_app(app)
  45. login_manager.login_view = 'login' # 定义登录界面的路由
  46. login_manager.login_message = '请先登录' # 定义登录界面的提示信息

  47. # 定义用户加载函数
  48. @login_manager.user_loader
  49. def load_user(user_id):
  50.     return User.query.get(int(user_id)) # 定义用户加载函数






  51. # 第五步:写路由绑定函数 http://ip:端口/806csrf
  52. # http://192.168.3.85/
  53. @app.route('/')
  54. # 第四步:写功能函数
  55. def index():
  56.     return "恭喜你一个网站完成了"


  57. @app.route('/806/<int:age>/<name>')
  58. def fun806(age,name):
  59.     return '806 你好:  姓名:'+name+' 年龄:'+str(age)+'岁'

  60. # 第六部:启动主程序;即启动网站
  61. if __name__ == "__main__":
  62.     app.run(host='0.0.0.0', port=80, debug=True)  # 开发时候用True
复制代码



app808


第三方库文件

导出
pip freeze > requirements.txt

导入
pip install -r requirements.txt



安装python不同版本
http://p.37ck.cn/#s/-DdbKRdw


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

194

主题

324

帖子

2399

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2399
 楼主| 发表于 2024-8-15 09:03:07 | 显示全部楼层
SQL语句形式:

  1. LDB = '../instance/API815.db'
  2. # 数据库接口部分 ai_run
  3. sqlai = "select * from user "


  4. @app.route('/', methods=['GET'])
  5. def index():
  6.     users = getsql(sqlai)
  7.     res = [{'id': row[0],'username': row[1],'password': row[2]} for row in users]
  8.     return {'status': 'success','message': '数据查询成功','results': res}

  9. def getsql(sql):
  10.     conn = sqlite3.connect(LDB)
  11.     cursor = conn.cursor()
  12.     cursor.execute(sql)
  13.     users = cursor.fetchall()
  14.     print(users)
  15.     conn.close()
  16.     return users
复制代码


20240815
view文件下载:


api接口文件头导入部分
  1. # -*- coding: utf-8 -*-
  2. # 文件名:API_VIEW_813
  3. # 定义API视图
  4. from flask.views import MethodView  # 导入MethodView;API:pip install flask-restful
  5. from flask import request  # 导入Flask和request:pip install flask
  6. from API_Models_813 import db, User # 导入User模型
复制代码


user接口的增删改查

  1. class UserApi(MethodView):
  2.     # 查找
  3.     def get(self, user_id):
  4.         if not user_id:  #没有传入user_id,返回所有用户信息
  5.             users: [User] = User.query.all()
  6.             results = [
  7.                 {
  8.                     'id': user.id,
  9.                     'username': user.username,
  10.                     'password': user.password,
  11.                 } for user in users
  12.             ]
  13.             return {
  14.                 'status': 'success成功',
  15.                 'message': '数据查询成功',
  16.                 'results': results
  17.             }
  18.         user: User = User.query.get(user_id) #传入user_id,返回单个用户信息

  19.         return {
  20.             'message': '数据查询成功',
  21.             'status': 'success单行数据',
  22.             'result': {
  23.                 'id': user.id,
  24.                 'username': user.username,
  25.                 'password': user.password,
  26.             }
  27.         }
  28.     # 增加
  29.     def post(self):
  30.         form = request.json
  31.         user = User()
  32.         user.username = form.get('username')
  33.         user.password = form.get('password')
  34.         db.session.add(user)
  35.         db.session.commit()
  36.         return {
  37.             'status': 'success',
  38.             'message': '数据添加成功'
  39.         }
  40.     # 删除
  41.     def delete(self, user_id):
  42.         user = User.query.get(user_id)
  43.         db.session.delete(user)
  44.         db.session.commit()
  45.         return {
  46.             'status': 'success',
  47.             'message': '数据删除成功'
  48.         }
  49.     # 修改
  50.     def put(self, user_id):
  51.         user: User = User.query.get(user_id)
  52.         form = request.json
  53.         user.username = form.get('username')
  54.         user.password = form.get('password')
  55.         db.session.commit()
  56.         return {
  57.             'status': 'success',
  58.             'message': '数据修改成功'
  59.         }
复制代码



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

194

主题

324

帖子

2399

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2399
 楼主| 发表于 2024-8-4 10:39:57 | 显示全部楼层
pip install -r requirements.txt
回复

使用道具 举报

194

主题

324

帖子

2399

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2399
 楼主| 发表于 2024-8-8 09:50:07 | 显示全部楼层
  1. # 第一步:安装flask,在终端执行如下指令:pip install flask
  2. # 第二步:导入库文件
  3. # *代表库的所有功能模块
  4. # 第三步:实例化一个app
  5. # import flask as F
  6. # AP=F.Flask(__name__)
  7. # from flask import Flask
  8. # 保存:ctrl+s;剪切:ctrl+X;复制:ctrl+c;粘贴:ctrl+v;格式化代码:ctrl+alt+L
  9. from flask import Flask,render_template,render_template_string,redirect, url_for, request, flash
  10. # UI网站界面:pip install bootstrap-flask
  11. # 表单: pip install flask-wtf
  12. from flask_bootstrap import Bootstrap5, SwitchField
  13. from flask_wtf import FlaskForm, CSRFProtect

  14. app = Flask(__name__)
  15. bootstrap = Bootstrap5(app)


  16. # 第五步:写路由绑定函数 http://ip:端口/806
  17. # http://192.168.3.85/
  18. @app.route('/')
  19. # 第四步:写功能函数
  20. def index():
  21.     return "恭喜你一个网站完成了"


  22. @app.route('/806/<int:age>/<name>')
  23. def fun806(age,name):
  24.     return '806 你好:  姓名:'+name+' 年龄:'+str(age)+'岁'




  25. # 第六部:启动主程序;即启动网站
  26. if __name__ == "__main__":
  27.     app.run(host='0.0.0.0', port=80, debug=True)  # 开发时候用True
复制代码
回复

使用道具 举报

45

主题

84

帖子

905

积分

版主

Rank: 7Rank: 7Rank: 7

积分
905
发表于 2024-8-19 21:55:03 | 显示全部楼层

图表例子

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|37创客科创中心

GMT+8, 2025-12-10 05:11 , Processed in 0.212941 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表