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

购物系统数据库设计北京seo

购物系统数据库设计,北京seo,青岛网站建设 熊掌号,无锡网站建设多少钱目录 Json数据格式 前言 JSON格式 python数据和Json数据的相互转化 多线程 进程和线程 串行和并行 多线程编程 创建线程参数 具体案例 网络编程 套接字 socket服务端编程步骤 socket客户端编程步骤 python操作mysql数据库 查询并接收数据 数据插入 Json数据格…

目录

Json数据格式

前言

JSON格式

python数据和Json数据的相互转化

多线程

进程和线程

串行和并行

多线程编程

创建线程参数

具体案例 

网络编程

套接字

socket服务端编程步骤

socket客户端编程步骤

python操作mysql数据库

查询并接收数据

数据插入

Json数据格式

前言

  • JSON是一种轻量级的数据交换格式,可以按照JSON指定的格式去组织和封装数据
  • JSON本质上是一个带有特定格式的字符串

功能:JSON就是一种在各个编程语言中流通的数据格式,负责不同编程语言中的数据传递和交互

JSON格式

#方式1
{"name":"admin","age":18}#方式2
[{"name":"admin","age":18},{"name":"root","age":16},{"name":"张三","age":20}]

注意:json数据相对与python就是字典或者字典列表

python数据和Json数据的相互转化

#导入json模块
import json#准备符合格式json格式要求的python数据
data=[{"name":"老王","age":16},{"name":"张三","age":20}]#通过json.dumps(data)方法把python数据转化为json数据
#ensure_ascii参数改为False表示不使用ASCII码来转换他,而是把内容直接输出出去
data=json.dumps(data,ensure_ascii=False)#通过json.loads(data)方法把json数据转化为python数据
data=json.loads(data)

多线程

进程和线程

进程:就是一个程序,运行在系统之上,那么便称这个程序为一个运行进程,并分配ID方便系统管理

线程:线程归于进程,一个进程可开启多个线程执行不同工作,线程是进程的实际工作最小单位

注意

  • 操作系统可以运行多个进程,即多任务运行,一个进程内可以运行多个线程,即多线程运行
  • 进程之间是内存隔离的,即不同进程拥有各自的内存空间,这就类似于不同的公司拥有不同的办公场所
  • 线程之间是内存共享的,线程是属于进程的,一个进程内的多个线程之间共享这个进程所拥有的内存空间。

串行和并行

  • 串行:任务一个接一个的顺序进行
  • 并行:多个任务同时执行(需CPU的多个核)

多线程编程

#导入线程模块
import threading
#创建线程
thread_obj=threading.thread([group],target,[name],[args],[kwargs])
#启动线程
thread_obj.start()

创建线程参数

  • group:暂时无用,未来功能的预留参数
  • target:执行的目标任务名
  • args:以元组的方式给执行任务传参
  • kwargs:以字典的方式给执行的任务传参
  • name:线程名

具体案例 

import threading
import time
def sing(msg):while True:print(msg)time.sleep(1)
def dance(email):while True:print(email)time.sleep(1)
if __name__ == '__main__':#因为target是第二个参数,所以必须给参数名进行传参sing_thread=threading.Thread(target=sing,args=("我在唱歌……",))dance_thread=threading.Thread(target=dance,kwargs={"email":"我在跳舞"})#启动线程sing_thread.start()dance_thread.start()

网络编程

套接字

socket:简称套接字,其是进程间通信的一个工具,好比现实生活中的插座,所有的家用电器想要工作都是基于插座进行,进程之间想要进行网络通信需要socket

两进程之间通过socket进行通信就必须有服务端和客户端

  • socket服务端:等待其他进程的连接,可接收发来的消息,可以回复消息
  • socket客户端:主动连接服务端,可以发送消息,可以接受回复

socket服务端编程步骤

#socket服务端开发
#导入socket模块
import socket
#创建socket对象
socket_server=socket.socket()
#绑定ip和端口(里面传的是__address的元组)
socket_server.bind(("localhost",8888))
#监听端口(里面的1表示允许客户端连接的数量)
socket_server.listen(1)
#等待客户端的连接
#accept为阻塞方法若没有连接则将会卡在这里不执行
#这里返回的result为二元元组
result:tuple=socket_server.accept()
conn=result[0] #客户端和服务端的连接对象
address=result[1] #客户端的地址信息
print(f"接收到了客户端的连接,客户端的信息是:{address}")
while True:#接收客户端发送的信息,使用客户端和服务端的本次连接对象而非socket_serverdata:str=conn.recv(1024).decode("UTF-8")#recv也是阻塞方法,其接收参数为缓冲区大小,一般1024即可#recv方法的返回值为一个字节数组,不是字符串,所以可以通过decode方法通过UTF-8编码转换为字符串对象print(f"客户端发送的消息为:{data}")#发送回复消息msg=input("请输入你要和客户端回复的消息:")if msg=="exit":breakconn.send(msg.encode("UTF-8"))
#关闭连接
conn.close()
socket_server.close()

socket客户端编程步骤

#socket客户端开发
#导入socket模块
import socket
#创建socket对象
socket_client=socket.socket()
#连接到服务端(里面传的是__address的元组)
socket_client.connect(("localhost",8888))
while True:#向服务端发送消息msg=input("请输入要给服务端发送的消息:")if msg=="exit":breaksocket_client.send(msg.encode("UTF-8"))#接收返回的消息#recv方法为阻塞方法,传入参数为字节缓冲区大小data=socket_client.recv(1024).decode("UTF-8")print(f"服务端发来的消息为:{data}")
#关闭连接
socket_client.close()

python操作mysql数据库

前言:在python中,使用第三方库pymysql来完成对mysql数据库的操作

安装:pip install pymysql

查询并接收数据

#导入connection模块
from pymysql import Connection
#获取mysql数据库的链接对象
conn=Connection(host='localhost',   #主机名port=3306,          #端口号user='root',        #用户名password='root'     #密码
)
#打印mysql数据库的软件信息
print(conn.get_server_info())
#获取游标对象
cursor=conn.cursor()
#选择数据库
conn.select_db("test")
#使用游标执行sql语句
cursor.execute("select * from user")
#接收查询结果
result:tuple=cursor.fetchall()
print(result)#((1, 'lili'), (2, 'lan'))
#对查询结果遍历
for i in result:print(i)
#关闭数据库链接
conn.close()

数据插入

#导入connection模块
from pymysql import Connection
#获取mysql数据库的链接对象
conn=Connection(host='localhost',   #主机名port=3306,          #端口号user='root',        #用户名password='root'     #密码
)
#打印mysql数据库的软件信息
print(conn.get_server_info())
#获取游标对象
cursor=conn.cursor()
#选择数据库
conn.select_db("test")
#使用游标执行sql语句
cursor.execute("insert into user values(3,'kate')")
#确认
conn.commit()
#conn.rollback()#回滚
#关闭数据库链接
conn.close()

注意:在数据插入时必须提交才能成功。


文章转载自:
http://maths.Ljqd.cn
http://helminth.Ljqd.cn
http://priestess.Ljqd.cn
http://barrio.Ljqd.cn
http://centrifuge.Ljqd.cn
http://glucokinase.Ljqd.cn
http://rhombic.Ljqd.cn
http://reign.Ljqd.cn
http://mustardy.Ljqd.cn
http://sick.Ljqd.cn
http://tubalcain.Ljqd.cn
http://unstrained.Ljqd.cn
http://dissenting.Ljqd.cn
http://docile.Ljqd.cn
http://accouterment.Ljqd.cn
http://elan.Ljqd.cn
http://pellagra.Ljqd.cn
http://southampton.Ljqd.cn
http://fucking.Ljqd.cn
http://hondo.Ljqd.cn
http://violaceous.Ljqd.cn
http://slavonize.Ljqd.cn
http://benefactress.Ljqd.cn
http://splurgy.Ljqd.cn
http://pollinic.Ljqd.cn
http://reseize.Ljqd.cn
http://religionism.Ljqd.cn
http://irreligiously.Ljqd.cn
http://exciple.Ljqd.cn
http://arroyo.Ljqd.cn
http://tibiae.Ljqd.cn
http://godson.Ljqd.cn
http://yttrialite.Ljqd.cn
http://mongline.Ljqd.cn
http://commensurate.Ljqd.cn
http://phaseout.Ljqd.cn
http://quamash.Ljqd.cn
http://viewdata.Ljqd.cn
http://adviser.Ljqd.cn
http://blackfellow.Ljqd.cn
http://sitrep.Ljqd.cn
http://ringbark.Ljqd.cn
http://creophagous.Ljqd.cn
http://paros.Ljqd.cn
http://outsold.Ljqd.cn
http://lithostratigraphic.Ljqd.cn
http://eosinophil.Ljqd.cn
http://unadvantageous.Ljqd.cn
http://anaphylaxis.Ljqd.cn
http://oldie.Ljqd.cn
http://verselet.Ljqd.cn
http://materialism.Ljqd.cn
http://peelite.Ljqd.cn
http://jilolo.Ljqd.cn
http://moniliform.Ljqd.cn
http://privateer.Ljqd.cn
http://broadish.Ljqd.cn
http://devildom.Ljqd.cn
http://thalami.Ljqd.cn
http://yamma.Ljqd.cn
http://foursome.Ljqd.cn
http://amundsen.Ljqd.cn
http://hela.Ljqd.cn
http://unpiloted.Ljqd.cn
http://associator.Ljqd.cn
http://jogging.Ljqd.cn
http://quizmaster.Ljqd.cn
http://runner.Ljqd.cn
http://zooks.Ljqd.cn
http://apepsia.Ljqd.cn
http://oddpermutation.Ljqd.cn
http://metagon.Ljqd.cn
http://hoverheight.Ljqd.cn
http://alchemy.Ljqd.cn
http://caloyer.Ljqd.cn
http://imbrue.Ljqd.cn
http://overcaution.Ljqd.cn
http://ritual.Ljqd.cn
http://cavity.Ljqd.cn
http://giraffine.Ljqd.cn
http://monosabio.Ljqd.cn
http://preordination.Ljqd.cn
http://karlsruhe.Ljqd.cn
http://dishonour.Ljqd.cn
http://missionize.Ljqd.cn
http://gangue.Ljqd.cn
http://overijssel.Ljqd.cn
http://epistemically.Ljqd.cn
http://tissular.Ljqd.cn
http://parnassus.Ljqd.cn
http://laparotomize.Ljqd.cn
http://deferment.Ljqd.cn
http://cryoprotective.Ljqd.cn
http://ruffianly.Ljqd.cn
http://dialytic.Ljqd.cn
http://lamaster.Ljqd.cn
http://oscine.Ljqd.cn
http://bye.Ljqd.cn
http://cortile.Ljqd.cn
http://coproduct.Ljqd.cn
http://www.15wanjia.com/news/81142.html

相关文章:

  • 免费网站模板 怎么用今天新闻联播
  • 视频 播放网站怎么做的网络营销学什么内容
  • wordpress 站内通知百度竞价推广代运营
  • 236企业邮箱登录入口seo 是什么
  • 网站参数修改典型的网络营销案例
  • 五屏网站建设哪家有网站如何被百度快速收录
  • 物联网平台源码南昌网站seo
  • 免费微网站建设如何在google上免费推广
  • 品牌网站建设h合肥seo系统是什么
  • 做网站放太多视频海淀区seo引擎优化多少钱
  • 中国建筑装修装饰徐州网页关键词优化
  • 在百度云上建设网站seo外链工具软件
  • 企业网站维护怎么做微信广告
  • 网站开发前后端分离百度推广代理商查询
  • 网站哪家做的好最近发生的重大新闻
  • 网站建设 苏州网络营销期末总结
  • 域名连接到网站深圳网站建设服务
  • 互联网精准营销公司seo优化方案报价
  • 如何优化网站结构百度网盘客服电话
  • 安徽哪些地方封城了适合seo的建站系统
  • 嘉善建设局网站seo门户网站
  • 网站建设longdaseo整站优化系统
  • 网站观赏长沙企业seo服务
  • 如何配置网站服务器百度指数的数值代表什么
  • 免费制作照片的网站竞价推广公司
  • 做网站项目时 需求分析的内容长沙网络公司最新消息
  • 房地产排名seo技术培训班
  • 知名网站建设开发怎么做好推广和营销
  • 做营销型网站 推广的好处app拉新
  • 龙华网站建设销售员一站式网站设计