当前位置: 首页 > news >正文

php做用户注册网站万能浏览器最新下载

php做用户注册网站,万能浏览器最新下载,网站建设与营销经验,晋江市住房建设局网站day17 笔记来源于#xff1a;黑马程序员python教程#xff0c;8天python从入门到精通#xff0c;学python看这套就够了 目录 day17121、Python 操作 MySQL 基础使用pymysql创建到 MySQL 的数据库链接执行 SQL 语句执行非查询性质的SQL语句执行查询性质的SQL语句 122、Pyth…day17 笔记来源于黑马程序员python教程8天python从入门到精通学python看这套就够了 目录 day17121、Python 操作 MySQL 基础使用pymysql创建到 MySQL 的数据库链接执行 SQL 语句执行非查询性质的SQL语句执行查询性质的SQL语句 122、Python 操作 MySQL 数据的插入自动 commit 123、综合案例案例需求DDL 定义实现步骤 Python 高阶技巧1、闭包基础概念简单闭包修改外部函数变量的值使用闭包实现 ATM 小案例 2、装饰器装饰器的一般写法闭包写法装饰器的语法糖写法 3、单例模式4、工厂模式5、多线程并行执行概念进程、线程并行执行 6、多线程编程 121、Python 操作 MySQL 基础使用 pymysql 在Python中使用第三方库pymysql 来完成对MySQL数据库的操作。 安装 1、pip install pymysql 2、或者 PyCharm中安装包 PyMySQL使用清华源https://pypi.tuna.tsinghua.edu.cn/simple。 创建到 MySQL 的数据库链接 演示 Python pymysql库的基础操作from pymysql import Connection# 构建到 MySQL数据库的链接 conn Connection(host localhost, # 主机名IPport 3306, # 端口user root, # 账户password 666666 # 密码 )# 打印 MySQL 数据库软件信息 # 验证是否连接上指定数据库 print(conn.get_server_info())# 关闭链接 conn.close()执行 SQL 语句 执行非查询性质的SQL语句 示例代码如下 演示 Python pymysql库的基础操作from pymysql import Connection# 构建到 MySQL数据库的链接 conn Connection(host localhost, # 主机名IPport 3306, # 端口user root, # 账户password 666666 # 密码 )# # 打印 MySQL 数据库软件信息 # # 验证是否连接上指定数据库 # print(conn.get_server_info())# 执行非查询性质的 SQL cursor conn.cursor() # 获取到游标对象# 选择数据库 conn.select_db(test) # 执行 sql cursor.execute(create table test_pymysql (id int);)# 关闭链接 conn.close()执行查询性质的SQL语句 演示 Python pymysql库的基础操作from pymysql import Connection# 构建到 MySQL数据库的链接 conn Connection(host localhost, # 主机名IPport 3306, # 端口user root, # 账户password 666666 # 密码 )# print(conn.get_server_info())# 执行非查询性质的 SQL # 获取到游标对象 cursor conn.cursor() # # 选择数据库 # conn.select_db(test) # # 执行 sql # cursor.execute(create table test_pymysql (id int);)# 选择数据库 conn.select_db(world) # 使用游标对象执行 sql 语句 cursor.execute(select * from student_1) # 获取查询结果 results cursor.fetchall() for r in results:print(r)# 关闭链接 conn.close()122、Python 操作 MySQL 数据的插入 直接使用 cursor.execute(insert into student_2 values(10002, 林俊杰, 31, 男))经过执行是无法将数据插入到数据表 student 中的。 因为pymysql在执行数据插入或其它产生数据更改的SQL语句时默认是需要提交更改的即需要通过代码“确认”这种更改行为。通过链接对象.commit() 即可确认此行为。 示例代码 演示使用 pymysql 库进行数据插入的操作from pymysql import Connection# 构建到 MySQL数据库的链接 conn Connection(host localhost, # 主机名IPport 3306, # 端口user root, # 账户password 666666, # 密码 )# 执行非查询性质的 SQL cursor conn.cursor() # 获取到游标对象# 选择数据库 conn.select_db(world) # 执行 sql cursor.execute(insert into student_2 values(10002, 林俊杰, 31, 男))# 通过 commit 确认 conn.commit()# 关闭链接 conn.close()自动 commit 如果不想手动commit确认可以在构建链接对象的时候设置自动commit的属性。 示例代码 # 构建到 MySQL数据库的链接 conn Connection(host localhost, # 主机名IPport 3306, # 端口user root, # 账户password 666666, # 密码autocommitTrue # 自动提交确认 )123、综合案例 案例需求 我们使用《面向对象》章节案例中的数据集完成使用Python语言读取数据并将数据写入MySQL的功能。 DDL 定义 本次需求开发我们需要新建一个数据库来使用数据库名称py_sql 基于数据结构可以得到建表语句 create table orders( order_date date, order_id varchar(255), money int, province varchar(10) );实现步骤 示例代码 DBeaver create database py_sql charset utf8;use py_sql;create table orders( order_date date, order_id varchar(255), money int, province varchar(10) );Python SQL 综合案例读取文件写入 MySQL 数据库中 from file_define import TextFileReader, JsonFileReader from data_define import Record from pymysql import Connectiontext_file_reader TextFileReader(E:/3code/PyCharm/pythonProject/mysql/03_综合案例/2011年1月销售数据.txt) json_file_reader JsonFileReader(E:/3code/PyCharm/pythonProject/mysql/03_综合案例/2011年2月销售数据JSON.txt)jan_data: list[Record] text_file_reader.read_data() feb_data: list[Record] json_file_reader.read_data()# 将 2 个月份的数据合并为 1 个 list 来存储 all_data: list[Record] jan_data feb_data print(all_data)# 构建 MySQL 链接对象 conn Connection(hostlocalhost,port3306,userroot,password666666,autocommitTrue )# 获得游标对象 cursor conn.cursor()# 选择数据库 conn.select_db(py_sql)# 组织 SQL 语句 for record in all_data:sql (finsert into orders(order_date, order_id, money, province) fvalues({record.date}, {record.order_id}, {record.money}, {record.province}))# print(sql)# 执行 SQL 语句cursor.execute(sql)# 关闭 MySQL 链接对象Python 高阶技巧 1、闭包 基础概念 通过全局变量account_amount来记录余额 尽管功能实现是ok的但是仍有问题 代码在命名空间上变量定义不够干净、整洁全局变量有被修改的风险 因此 将变量定义在函数内部是行不通我们需要使用闭包 在函数嵌套的前提下内部函数使用了外部函数的变量并且外部函数返回了内部函数我们把这个使用外部函数变量的内部函数称为闭包。 简单闭包 示例代码 # 简单闭包 def outer(logo):def inner(msg):print(f{logo}{msg}{logo})return innerfn1 outer(黑马程序员) fn1(welcome)修改外部函数变量的值 示例代码 # 使用 nonlocal 关键字修改外部函数的值 def outer(num1):def inner(num2):nonlocal num1num1 num2print(num1)return innerfn outer(10) fn(10) fn(20) fn(20) fn(20)使用闭包实现 ATM 小案例 演示 Python 的闭包特性# 使用闭包实现 ATM 小案例 def account_create(initial_account 0):def atm(num, depositTrue):nonlocal initial_accountif deposit:initial_account numprint(f存款 {num}, 账户余额{initial_account})else:initial_account - numprint(f存款 -{num}, 账户余额{initial_account})return atmatm account_create()atm(100) atm(200) atm(100, depositFalse)tips 优点使用闭包可以让我们得到 无需定义全局变量即可实现通过函数持续的访问、修改某个值闭包使用的变量的所用于在函数内难以被错误的调用修改 缺点 由于内部函数持续引用外部函数的值所以会导致这一部分内存空间不被释放一直占用内存 2、装饰器 装饰器其实也是一种闭包 其功能就是在不破坏目标函数原有的代码和功能的前提下为目标函数增加新功能。 装饰器的一般写法闭包写法 示例代码 # 装饰器的一般写法(闭包) def outer(func):def inner():print(我睡觉了)func()print(我起床了)return innerdef sleep():import randomimport timeprint(睡眠中......)time.sleep(random.randint(1, 5))fn outer(sleep) fn()定义一个闭包函数 在闭包函数内部 执行目标函数并完成功能的添加 执行结果 # 结果 我睡觉了 睡眠中...... 我起床了装饰器的语法糖写法 def outer(func):def inner():print(我睡觉了)func()print(我起床了)return innerouter def sleep():import randomimport timeprint(睡眠中......)time.sleep(random.randint(1, 5))sleep()使用outer 定义在目标函数sleep之上 执行结果 # 结果 我睡觉了 睡眠中...... 我起床了3、单例模式 某些场景下 我们需要一个类无论获取多少次类对象都仅仅提供一个具体的实例用以节省创建类对象的开销和内存开销比如某些工具类仅需要1个实例即可在各处使用。 这就是单例模式所要实现的效果。 单例模式Singleton Pattern是一种常用的软件设计模式该模式的主要目的是确保某一个类只有一个实例存在。 在整个系统中某个类只能出现一个实例时单例对象就能派上用场。 定义保证一个类只有一个实例,并提供一个访问它的全局访问点适用场景当一个类只能有一个实例而客户可以从一个众所周知的访问点访问它时。 单例的实现模式 4、工厂模式 当需要大量创建一个类的实例的时候 可以使用工厂模式。 即从原生的使用类的构造去创建对象的形式迁移到基于工厂提供的方法去创建对象的形式。 例如由 转到 上述示例使用工厂类的get_person()方法去创建具体的类对象 优点 大批量创建对象的时候有统一的入口易于代码维护当发生修改仅修改工厂类的创建方法即可符合现实世界的模式即由工厂来制作产品对象。 示例代码 演示 设计模式之工厂模式class Person:passclass Worker(Person):passclass Student(Person):passclass Teacher(Person):passclass PersonFactory:def get_person(self, p_type):if p_type w:return Worker()elif p_type s:return Student()else:return Teacher()pf PersonFactory() worker pf.get_person(w) stu pf.get_person(s) teacher pf.get_person(t)5、多线程并行执行概念 进程、线程 进程 就是一个程序运行在系统之上那么便称之这个程序为一个运行进程并分配进程ID方便系统管理。 线程线程是归属于进程的一个进程可以开启多个线程执行不同的工作是进程的实际工作最小单位。 进程就好比一家公司是操作系统对程序进行运行管理的单位 线程就好比公司的员工进程可以有多个线程员工是进程实际的工作者。 操作系统中可以运行多个进程即多任务运行 一个进程内可以运行多个线程即多线程运行。 tips 进程之间是内存隔离的 即不同的进程拥有各自的内存空间。 这就类似于不同的公司拥有不同的办公场所。 线程之间是内存共享的线程是属于进程的一个进程内的多个线程之间是共享这个进程所拥有的内存空间的。 这就好比公司员工之间是共享公司的办公场所。 并行执行 并行执行的意思指的是同一时间做不同的工作。 进程之间就是并行执行的操作系统可以同时运行好多程序这些程序都是在并行执行。 除了进程外线程其实也是可以并行执行的。 也就是比如一个Python程序其实是完全可以做到 一个线程在输出你好一个线程在输出Hello 像这样一个程序在同一时间做两件乃至多件不同的事情 我们就称之为多线程并行执行 6、多线程编程 基本语法 单线程 示例代码 演示 多线程编程的使用 import timedef sing():while True:print(我在唱歌啦啦啦...)time.sleep(1)def dance():while True:print(我在跳舞呱呱呱...)time.sleep(1)if __name__ __main__:sing()dance()# 结果 我在唱歌啦啦啦... 我在唱歌啦啦啦... 我在唱歌啦啦啦... 我在唱歌啦啦啦... 我在唱歌啦啦啦... 我在唱歌啦啦啦... 我在唱歌啦啦啦... 我在唱歌啦啦啦... 我在唱歌啦啦啦... 我在唱歌啦啦啦... 我在唱歌啦啦啦...单方面循环 sing() 多线程 演示 多线程编程的使用 import time import threadingdef sing():while True:print(我在唱歌啦啦啦...)time.sleep(1)def dance():while True:print(我在跳舞呱呱呱...)time.sleep(1)if __name__ __main__:# 创建一个唱歌线程sing_thread threading.Thread(targetsing)# 创建一个跳舞线程dance_thread threading.Thread(targetdance)# 进程启动sing_thread.start()dance_thread.start()# 结果 我在唱歌啦啦啦... 我在跳舞呱呱呱... 我在唱歌啦啦啦...我在跳舞呱呱呱...我在唱歌啦啦啦...我在跳舞呱呱呱...我在跳舞呱呱呱... 我在唱歌啦啦啦...多线程传参 需要传参的话可以通过 args参数通过元组按参数顺序的方式传参或使用kwargs参数用字典的形式传参 示例代码 演示 多线程编程的使用 import time import threadingdef sing(msg):while True:print(msg)time.sleep(1)def dance(msg):while True:print(msg)time.sleep(1)if __name__ __main__:# 创建一个唱歌线程sing_thread threading.Thread(targetsing, args(我要唱歌哈哈哈,))# 创建一个跳舞线程dance_thread threading.Thread(targetdance, kwargs{msg:我在跳舞啦啦啦})# 进程启动sing_thread.start()dance_thread.start()# 结果 我要唱歌哈哈哈 我在跳舞啦啦啦 我要唱歌哈哈哈 我在跳舞啦啦啦 我要唱歌哈哈哈 我在跳舞啦啦啦 我在跳舞啦啦啦 我要唱歌哈哈哈 我在跳舞啦啦啦 我要唱歌哈哈哈 我要唱歌哈哈哈我在跳舞啦啦啦我在跳舞啦啦啦 我要唱歌哈哈哈 我在跳舞啦啦啦我要唱歌哈哈哈
http://www.dnsts.com.cn/news/123969.html

相关文章:

  • 厦门建站最新消息如何撤销网站上信息吗
  • 做网站好的公司有哪些网站建设每年有维护费吗
  • 网站 云端徐州做网站的培训机构
  • 郑州营销网站政务网站无障碍建设
  • 深圳网站seo外包公司哪家好网页制作网页
  • cms网站开发网站模板东莞做网站有哪些
  • 什么亲子网站可以做一下广告词昆明网站建设多少钱
  • 网站主目录权限配置wordpress用户自动禁止登录
  • 网页制作与网站设计论文城乡建设网站职业查询
  • 第三方网站建设博客网站首页设计
  • 郑州做网站擎天公司手机网站建设公司
  • 网站建设毕业答辩ppt模板攀枝花建设规划网站
  • 怎么做网站步骤免费的网站被挂黑链怎么处理
  • 门户网站开发流程视频如何创造一个小程序
  • 网站做301将重定向到新域名垫江网站建设价格
  • 怎样查网站空间地址企业邮箱收费
  • 外企网站建设电子商务网站与普通网站的区别
  • 制作地图的网站徐家汇网站建设
  • 遵化网站开发品牌策划策略
  • 网站建设公司固定ip公共信息服务平台
  • 一个人可做几次网站备案网站怎么无法访问
  • 网站建设需要自备什么wordpress 文件下载插件
  • 男人和女人做污的视频网站网站建设情况说明
  • 建立网站需要多少钱怎么样网络营销策划技巧
  • 网站开发入门ppt植物提取网站做的比较好的厂家
  • 公司网站建设建议沈阳商城网站开发
  • 国外网站设计公司网站建设能
  • c2c模式的网站有哪些网站建设制作公司
  • vs2017 网站开发大连市招标网公示
  • 元素网站国内做外贸如何访问外国网站