MySQL与Python的交互1.交互类型2.增删改查(CRUD)3.封装

交互类型

安装引入模块

安装

mysql

模块,在

Windows

和

Ubuntu

中:

MySQL与Python的交互1.交互类型2.增删改查(CRUD)3.封装

在Windows中安装mysql模块:

立即学习“Python免费学习笔记(深入)”;

MySQL与Python的交互1.交互类型2.增删改查(CRUD)3.封装

在Linux中安装mysql模块:

在文件中引入模块:

import pymysql

Connection对象用于建立与数据库的连接

创建对象:调用

connect()

方法

conn = connect(参数列表)

参数:

host

:连接的mysql主机,如果本机是’localhost’

port

:连接的mysql主机的端口,默认是3306

db

:数据库的名称

user

:连接的用户名

password

:连接的密码

charset

:通信采用的编码方式,默认是’gb2312’,要求与数据库创建时指定的编码一致,否则中文会乱码对象的方法

close()

:关闭连接

commit()

:事务,所以需要提交才会生效

rollback()

:事务,放弃之前的操作

cursor()

:返回Cursor对象,用于执行sql语句并获得结果

Cursor对象:

执行sql语句

创建对象:调用Connection对象的

cursor()

方法

cursor1 = conn.cursor()

对象的方法:

close()

:关闭

execute(operation [, parameters ])

:执行语句,返回受影响的行数

fetchone()

:执行查询语句时,获取查询结果集的第一个行数据,返回一个元组

next()

:执行查询语句时,获取当前行的下一行

fetchall()

:执行查询时,获取结果集的所有行,一行构成一个元组,再将这些元组装入一个元组返回

scroll(value[,mode])

:将行指针移动到某个位置

mode

表示移动的方式,

mode

的默认值为

relative

,表示基于当前行移动到

value

,

value

为正则向下移动,

value

为负则向上移动。相对的

mode

的值为

absolute

,表示基于第一条数据的位置,第一条数据的位置为0,绝对的。举个例子便于理解:

# 导入python操作mysql的模块import pymysql

获取连接对象

conn = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='python01', port=3306, charset='utf8')

获取执行工具

cur = conn.cursor()

sql语句,增删改

sql = 'select birthday from t_user'

sql = 'select id,name,pwd,birthday from t_user'

执行,返回值。如果是增删改,返回受影响的行数,如果是查询,返回查询的行数

count = cur.execute(sql)print('查询的结果有%s条数据'%count)

获取第一行

dateOne = cur.fetchone()print(dateOne)

向上移动一行

cur.scroll(-1)

向下移动一行

cur.scroll(1)

cur.scroll(1,mode='absolute') # 绝对的,这里指的是第一行cur.scroll(1,mode='relative') # 相对的

获取所有行的数据

dataAll = cur.fetchall()print(dataAll)

for temp in dataAll:print(temp)print(dataAll[-1][2]) #dataAll[-1]得到的是一个用户所有的信息,dataAll[-1][2]获取最后一个人的密码

for temp in cur:print(temp)

s = 'id:%s,name:%s,pwd:%s,birthday:%s'for temp in dataAll:print(s%(temp[0],temp[1],temp[2],temp[3]))

关闭

cur.close()conn.close()

对象的属性

rowcount

:只读属性,表示最近一次

execute()

执行后受影响的行数

connection

:获得当前连接对象

增删改查(CRUD)

增

创建

testInsert.py

文件,向学生表中插入一条数据:

#encoding=utf-8import pymysql

try:conn=pymysql.connect(host='localhost',port=3306,db='test1',user='root',passwd='mysql',charset='utf8')cs1=conn.cursor()count=cs1.execute("insert into students(sname) values('张良')")print(count)conn.commit()cs1.close()conn.close()except Exception as e:print(e)

修改

创建

testUpdate.py

文件,修改学生表的一条数据:

#encoding=utf-8import pymysql

try:conn=pymysql.connect(host='localhost',port=3306,db='test1',user='root',passwd='mysql',charset='utf8')cs1=conn.cursor()count=cs1.execute("update students set sname='刘邦' where id=6")print(count)conn.commit()cs1.close()conn.close()except Exception as e:print(e)

删除

创建

testDelete.py

文件,删除学生表的一条数据:

#encoding=utf-8import pymysql

try:conn=pymysql.connect(host='localhost',port=3306,db='test1',user='root',passwd='mysql',charset='utf8')cs1=conn.cursor()count=cs1.execute("delete from students where id=6")print(count)conn.commit()cs1.close()conn.close()except Exception as e:print(e)

查

创建

testSelectOne.py

文件,查询一条学生信息:

import pymysql

try:conn=pymysql.connect(host='localhost',port=3306,db='test1',user='root',passwd='mysql',charset='utf8')cur=conn.cursor()cur.execute('select * from students where id=7')result=cur.fetchone()print(result)cur.close()conn.close()except Exception as e:print(e)

创建

testSelectMany.py

文件,查询全部学生信息:

#encoding=utf8import pymysql

try:conn=pymysql.connect(host='localhost',port=3306,db='test1',user='root',passwd='mysql',charset='utf8')cur=conn.cursor()cur.execute('select * from students')result=cur.fetchall()print(result)cur.close()conn.close()except Exception as e:print(e)

实例一:参数

# 导入python操作mysql的模块import pymysqlimport time

获取连接对象

conn = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='python01', port=3306, charset='utf8')

获取执行工具

cur = conn.cursor()

sql语句,增删改,sql注入

sql = 'insert into t_user(name,pwd,birthday) values(%s,%s,%s)'

云雀语言模型
云雀语言模型

云雀是一款由字节跳动研发的语言模型,通过便捷的自然语言交互,能够高效的完成互动对话

云雀语言模型 54
查看详情 云雀语言模型

参数列表

name = input('输入姓名:')pwd = input('输入密码:')birthday = input('输入生日:') # 2017年10月01日-->日期struct_time(--->2017-10-01)birthday = time.strptime(birthday,'%Y年%m月%d日') #这里我们就用到了时间与字符串的相互转换(详情见MySQL高级)params = [name,pwd,birthday]

执行,返回值。如果是增删改,返回受影响的行数,如果是查询,返回查询的行数

count = cur.execute(sql,params)

提交

conn.commit()print('受影响的行数:%s'%count)

关闭

cur.close()conn.close()

实例二:抛出异常

# 导入python操作mysql的模块import pymysql

try:conn = Nonecur = None

# 获取连接对象conn = pymysql.connect(host='127.0.0.1',                       user='root',                       password='123456',                       database='python01',                       port=3306,                       charset='utf8')# 模拟异常# a = 1 / 0# 获取执行工具cur = conn.cursor()# sql语句,增删改sql = 'insert into t_user(name,pwd,birthday) values("小伊","123456",str_to_date("2017年10月20日","%Y年%m月%d日"))'# 执行,返回值。如果是增删改,返回受影响的行数,如果是查询,返回查询的行数count = cur.execute(sql)# 提交conn.commit()print('受影响的行数:%s' % count)

except Exception as ex:

打印异常信息,测试时候使用,项目上线,去掉

print(str(ex))# 将异常继续抛出# raise

finally:if cur != None:cur.close()if conn != None:conn.close()

实例三:

# 导入python操作mysql的模块import pymysql

获取连接对象

conn = pymysql.connect(host='127.0.0.1', user='root', password='123456', database='python01', port=3306, charset='utf8')

获取执行工具

cur = conn.cursor()

sql语句,增删改

sql = 'select birthday from t_user'

sql = 'select id,name,pwd,birthday from t_user'

执行,返回值。如果是增删改,返回受影响的行数,如果是查询,返回查询的行数

count = cur.execute(sql)print('查询的结果有%s条数据'%count)

获取第一行

dateOne = cur.fetchone()

print(dateOne)

for temp in cur:

print(temp)

s = 'id:%s,name:%s,pwd:%s,birthday:%s'for temp in dataAll:print(s%(temp[0],temp[1],temp[2],temp[3]))

关闭

cur.close()conn.close()

封装

这个库的名字:

mySqlHelper

# python操作mysql进行增删改查的封装

1、增删改,代码类似

2、查询

代码分析

1、获取连接对象

2、sql语句不同,参数不同

3、获取执行对象

增删改

查询

1、fetchone

2、fetchall

4、处理结果

5、关闭

面向对象 建立类,封装属性和函数

import pymysql

class MysqlHelper:'''python操作mysql的增删改查的封装'''

def __init__(self, host, user, password, database, port=3306, charset='utf8'):    '''    初始化参数    :param host:        主机    :param user:        用户名    :param password:    密码    :param database:    数据库    :param port:        端口号,默认是3306    :param charset:     编码,默认是utf8    '''    self.host = host    self.port = port    self.database = database    self.user = user    self.password = password    self.charset = charsetdef connect(self):    '''    获取连接对象和执行对象    :return:    '''    self.conn = pymysql.connect(host=self.host,                                user=self.user,                                password=self.password,                                database=self.database,                                port=self.port,                                charset=self.charset)    self.cur = self.conn.cursor()def fetchone(self, sql, params=None):    '''    根据sql和参数获取一行数据    :param sql:          sql语句    :param params:       sql语句对象的参数元组,默认值为None    :return:             查询的一行数据    '''    dataOne = None    try:        count = self.cur.execute(sql, params)        if count != 0:            dataOne = self.cur.fetchone()    except Exception as ex:        print(ex)    finally:        self.close()    return dataOnedef fetchall(self, sql, params=None):    '''    根据sql和参数获取一行数据    :param sql:          sql语句    :param params:       sql语句对象的参数列表,默认值为None    :return:             查询的一行数据    '''    dataall = None    try:        count = self.cur.execute(sql, params)        if count != 0:            dataall = self.cur.fetchall()    except Exception as ex:        print(ex)    finally:        self.close()    return dataalldef __item(self, sql, params=None):    '''    执行增删改    :param sql:           sql语句    :param params:        sql语句对象的参数列表,默认值为None    :return:              受影响的行数    '''    count = 0    try:        count = self.cur.execute(sql, params)        self.conn.commit()    except Exception as ex:        print(ex)    finally:        self.close()    return countdef update(self, sql, params=None):    '''    执行修改    :param sql:     sql语句    :param params:  sql语句对象的参数列表,默认值为None    :return:        受影响的行数    '''    return self.__item(sql, params)def insert(self, sql, params=None):    '''    执行新增    :param sql:     sql语句    :param params:  sql语句对象的参数列表,默认值为None    :return:        受影响的行数    '''    return self.__item(sql, params)def delete(self, sql, params=None):    '''    执行删除    :param sql:     sql语句    :param params:  sql语句对象的参数列表,默认值为None    :return:        受影响的行数    '''    return self.__item(sql, params)def close(self):    '''    关闭执行工具和连接对象    '''    if self.cur != None:        self.cur.close()    if self.conn != None:        self.conn.close()
  1. 测试查询多条数据
import mysqlHelper

初始化对象

helper = mysqlHelper.MysqlHelper('127.0.0.1', 'root', '123456', 'python01')

连接

helper.connect()

sql

sql = 'select * from t_user where name = %s and id > %s'

params

params = ['小茗',1]

执行

data = helper.fetchall(sql, params)

判断

if data:for temp in data:print(temp)else: # None,False,0print('没有数据.')

helper.close()

测试查询一条数据

import mysqlHelper

初始化对象

helper = mysqlHelper.MysqlHelper('127.0.0.1', 'root', '123456', 'python01')

连接

helper.connect()

sql

sql = 'select * from t_user where id = %s'

sql = 'select * from t_user where id = 1'

params

params = [2]

执行

data = helper.fetchone(sql, params)

data = helper.fetchone(sql)

判断

if data:print(data)else: # None,False,0print('没有数据.')

测试增删改

import mysqlHelperimport time

初始化对象

helper = mysqlHelper.MysqlHelper('127.0.0.1', 'root', '123456', 'python01')

连接

helper.connect()

sql

sql = 'update t_user set name =%s,pwd=%s,birthday=%s where id=%s'

params

id = input('输入编号:')name = input('输入姓名:')pwd = input('输入密码:')birthday = time.strptime(input('输入生日:'), '%Y年%m月%d日')params = [name, pwd, birthday,id]

执行

count = helper.update(sql, params)

判断

if count:print('操作成功.')else: # None,False,0print('操作失败.')

登录和注册

登录和注册的时候需要对密码进行加密。

注意:

需要对密码进行加密,如果使用md5加密,则密码包含32个字符;如果使用sha1加密,则密码包含40个字符,这里使用这种方式。

create table userinfos(id int primary key auto_increment,uname varchar(20),upwd char(40),isdelete bit default 0);

/ret = doPwd('123')print(ret)结果:40bd001563085fc35165329ea1ff5c5ecbdbbeef/

-- 插入如下数据,用户名为123,密码为123,这是sha1加密后的值insert into userinfos values(1,'123','40bd001563085fc35165329ea1ff5c5ecbdbbeef',0);

登录与注册:

from mysqlHelper import MysqlHelperimport hashlib

def login():'''登录'''name = input('输入用户名:')pwd = input('输入密码:')

加密

pwd = doPwd(pwd)helper = MysqlHelper('127.0.0.1', 'root', '123456', 'python01')helper.connect()sql = 'select * from t_user where name=%s and pwd=%s'params = [name, pwd]data = helper.fetchone(sql, params)if data:    print('登录成功.')else:  # None,False,0    print('登录失败.')

def doPwd(pwd):'''sha1编码'''mysha1 = hashlib.sha1()mysha1.update(pwd.encode('utf-8'))pwd = mysha1.hexdigest()return pwd

def register():'''注册'''name = input('输入用户名:')pwd = input('输入密码:')

加密

pwd = doPwd(pwd)helper = MysqlHelper('127.0.0.1', 'root', '123456', 'python01')helper.connect()sql = 'insert into t_user(name,pwd) values(%s,%s)'params = [name, pwd]count = helper.insert(sql, params)if count:    print('操作成功.')else:  # None,False,0    print('操作失败.')

if name == 'main':

register()

login()

以上就是MySQL与Python的交互1.交互类型2.增删改查(CRUD)3.封装的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/369946.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
java数组有哪些操作
上一篇 2025年11月6日 07:14:18
崩坏星穹铁道赛飞儿用什么光锥-崩铁赛飞儿光锥推荐
下一篇 2025年11月6日 07:14:27

相关推荐

  • Claude如何优化金融分析 Claude财经数据解读模型

    Claude如何优化金融分析 Claude财经数据解读模型Claude如何优化金融分析 Claude财经数据解读模型Claude如何优化金融分析 Claude财经数据解读模型Claude如何优化金融分析 Claude财经数据解读模型

    在金融分析领域使用claude类ai模型需注意四个关键点。一要确保输入数据质量高且结构化,如提供具体财报数字而非模糊描述;二要通过引导式提问促进深度分析,例如要求比较公司roe变化及原因;三要结合术语与通俗表达适应不同场景,比如让非专业者理解贝塔系数;四要注意模型局限性,不盲目依赖结论、关注数据时效…

    2026年9月26日 • 用户投稿
    000
  • Debian swapper如何与文件系统交互

    Debian swapper如何与文件系统交互Debian swapper如何与文件系统交互Debian swapper如何与文件系统交互Debian swapper如何与文件系统交互

    Debian系统中的交换分区管理器(swapper)与文件系统之间存在着紧密的交互关系,主要体现在以下几个方面: 一、交换空间的配置与管理 创建交换分区: 利用fdisk或parted工具创建新的分区,并使用mkswap命令将其格式化为交换空间。启用/禁用交换分区: 使用swapon命令激活交换分区…

    2026年9月26日 • 用户投稿
    000
  • 洗护行业不卷价格,差异化创新谋未来

    洗护行业不卷价格,差异化创新谋未来洗护行业不卷价格,差异化创新谋未来洗护行业不卷价格,差异化创新谋未来洗护行业不卷价格,差异化创新谋未来

    9月25日,由中国家电网主办的“净·呵护多·自由悦·美居2025中国家庭洗衣及烘护行业高峰论坛”在山东济南召开,来自澳柯玛、博世家电、卡萨帝、海尔、海立、海信、leader、小天鹅、荣事达、西门子家电、tcl、东芝、小鸭集团的洗护行业上下游企业代表,以及渠道合作伙伴京东家电家居、数据机构gfk中国、…

    2026年9月26日 • 用户投稿
    000
  • OPPO Find X8 Ultra 获推满血 ColorOS 15 影像功能大升级

    OPPO Find X8 Ultra 获推满血 ColorOS 15 影像功能大升级OPPO Find X8 Ultra 获推满血 ColorOS 15 影像功能大升级OPPO Find X8 Ultra 获推满血 ColorOS 15 影像功能大升级OPPO Find X8 Ultra 获推满血 ColorOS 15 影像功能大升级

    近期,oppo 正式对外发布消息,find x8 ultra 手机将获得满血版 coloros 15 系统的更新。这次更新涵盖了许多新功能和改进,特别是在影像技术上取得了长足的进步。 在摄影方面,本次更新引入了视频专家模式,以更好地迎合专业用户的个性化需求。原有的电影模式已经升级为专业的视频模式,允…

    2026年9月26日 • 用户投稿
    200
  • Safari浏览器如何重置到初始设置_Safari浏览器恢复默认出厂设置操作

    Safari浏览器如何重置到初始设置_Safari浏览器恢复默认出厂设置操作Safari浏览器如何重置到初始设置_Safari浏览器恢复默认出厂设置操作Safari浏览器如何重置到初始设置_Safari浏览器恢复默认出厂设置操作Safari浏览器如何重置到初始设置_Safari浏览器恢复默认出厂设置操作

    重置Safari可解决运行缓慢、加载异常等问题。首先通过Safari偏好设置清除历史记录与网站数据,并恢复各项功能至默认值;若问题依旧,可使用终端命令删除偏好文件及缓存实现深度重置;也可通过系统设置一次性清除所有浏览数据与扩展信息,重启后恢复初始状态。 如果您发现Safari浏览器运行缓慢、页面加载…

    2026年9月26日 • 用户投稿
    100
  • 检查型异常(Checked Exception)和非检查型异常(Unchecked Exception)的区别?

    检查型异常(Checked Exception)和非检查型异常(Unchecked Exception)的区别?检查型异常(Checked Exception)和非检查型异常(Unchecked Exception)的区别?检查型异常(Checked Exception)和非检查型异常(Unchecked Exception)的区别?检查型异常(Checked Exception)和非检查型异常(Unchecked Exception)的区别?

    检查型异常由编译器强制处理,代表可预期的外部问题,如文件不存在;非检查型异常为运行时异常,通常由程序逻辑错误引起,编译器不强制捕获。前者需显式处理或声明,体现健壮性设计;后者应通过预防避免,体现“快速失败”原则。自定义异常时,若调用方可恢复或需处理,应继承Exception;若为内部错误,则继承Ru…

    2026年9月26日 • 用户投稿
    000
  • 铁路12306候补订单兑现失败会退款吗_铁路12306候补兑现失败退款说明

    铁路12306候补订单兑现失败会退款吗_铁路12306候补兑现失败退款说明铁路12306候补订单兑现失败会退款吗_铁路12306候补兑现失败退款说明铁路12306候补订单兑现失败会退款吗_铁路12306候补兑现失败退款说明铁路12306候补订单兑现失败会退款吗_铁路12306候补兑现失败退款说明

    候补兑现失败会退款,系统自动全额原路返还。1、候补失败后预付款将全额退至原支付账户。2、主动取消候补需在截止前操作,流程为:进入12306 APP→“我的”→“订单”→“候补订单”→选择订单→点击“取消候补”。3、支付宝或微信支付退款到账时间为1-3个工作日,银联卡或储蓄卡为3-15个工作日,跨行或…

    2026年9月26日 • 用户投稿
    000
  • 顶级学术会议MICCAI最高奖项披露,华人科学家首次获奖!

    顶级学术会议MICCAI最高奖项披露,华人科学家首次获奖!顶级学术会议MICCAI最高奖项披露,华人科学家首次获奖!顶级学术会议MICCAI最高奖项披露,华人科学家首次获奖!顶级学术会议MICCAI最高奖项披露,华人科学家首次获奖!

    9 月 23 日至 27 日,2025 年国际医学影像计算与计算机辅助介入协会(miccai)年会在韩国隆重举行。在此期间,上海科技大学生物医学工程学院创始院长、联影智能联席 ceo 沈定刚荣获大会颁发的 miccai enduring impact award (eia) 持久影响力奖,成为该奖项…

    2026年9月26日 • 用户投稿
    000
  • win11文件夹选项打不开或闪退怎么办_win11文件夹选项无法打开或闪退修复方法

    1、通过启用独立进程运行文件夹窗口、修复系统文件、重置文件夹视图注册表项及禁用第三方服务,可解决Win11文件夹选项闪退问题。 如果您尝试打开Win11的文件夹选项时遇到无响应或窗口闪退的情况,这通常与系统配置、权限设置或关键服务异常有关。此类问题会阻碍您对文件资源管理器进行自定义设置。 本文运行环…

    2026年9月26日
    000
  • 2025高分辨率图片生成AI工具Top10榜单

    2025年高分辨率AI图像生成工具将实现技术突破,榜单预测包括DeepImage AI Pro 2025、NVIDIA AI Imaginer 5.0等十款产品,涵盖生成质量、速度、细节控制、Prompt理解与软件兼容性五大维度;当前技术瓶颈集中在计算资源需求大、算法优化难、数据标注成本高,而未来趋…

    2026年9月26日
    200
  • synchronized 关键字的实现原理是什么?它是如何保证线程安全的?

    synchronized 关键字的实现原理是什么?它是如何保证线程安全的?synchronized 关键字的实现原理是什么?它是如何保证线程安全的?synchronized 关键字的实现原理是什么?它是如何保证线程安全的?synchronized 关键字的实现原理是什么?它是如何保证线程安全的?

    synchronized 是 Java 中保证线程安全的核心机制,其本质是通过 JVM 内置的 Monitor(监视器)实现互斥访问。当多个线程竞争同步资源时,synchronized 依靠对象头中的 Mark Word 和锁升级机制(偏向锁 → 轻量级锁 → 重量级锁)动态调整锁的实现方式,以平衡…

    2026年9月26日 • 用户投稿
    100
  • sublime怎么修改默认的python build system_sublime Python默认编译系统修改

    sublime怎么修改默认的python build system_sublime Python默认编译系统修改sublime怎么修改默认的python build system_sublime Python默认编译系统修改sublime怎么修改默认的python build system_sublime Python默认编译系统修改sublime怎么修改默认的python build system_sublime Python默认编译系统修改

    答案:通过创建自定义Build System可指定Python解释器路径和运行参数。1. 在Tools→Build System→New Build System中创建新配置;2. 编辑JSON内容,设置cmd为python路径及-u $file参数,确保shell为true;3. 保存为Pytho…

    2026年9月26日 • 用户投稿
    100
  • 华硕灵珑主机风扇转速异常?风扇 PWM 调速芯片老化故障诊断​

    华硕灵珑主机风扇转速异常?风扇 PWM 调速芯片老化故障诊断​华硕灵珑主机风扇转速异常?风扇 PWM 调速芯片老化故障诊断​华硕灵珑主机风扇转速异常?风扇 PWM 调速芯片老化故障诊断​华硕灵珑主机风扇转速异常?风扇 PWM 调速芯片老化故障诊断​

    华硕灵珑主机风扇转速异常主要是硬件问题。1. 首先通过进入bios检查风扇转速,若在bios中转速异常,则为硬件故障;2. 更新主板bios,若无效则进一步排查;3. 检查风扇4pin接口是否插好或插反;4. 若更换风扇后仍高转,可能是pwm调速芯片老化损坏,需用万用表或示波器检测信号线电压和波形,…

    2026年9月26日 • 用户投稿
    300
  • 豆包适配移动端吗 移动设备使用豆包的体验优化建议

    本文将围绕豆包在移动设备上的适配性展开讨论,并提供一系列优化使用体验的具体方法。文章会首先明确豆包对移动端的支持情况,然后通过分步讲解的形式,介绍如何在手机等设备上更高效地进行交互、输入和获取信息,帮助用户掌握提升操作流畅度的实用技巧。 ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限…

    2026年9月26日
    000
  • 淘宝顺手买一件的东西是正品吗?是否值得入手?深度解析购物陷阱与机会

    淘宝顺手买一件的东西是正品吗?是否值得入手?深度解析购物陷阱与机会淘宝顺手买一件的东西是正品吗?是否值得入手?深度解析购物陷阱与机会淘宝顺手买一件的东西是正品吗?是否值得入手?深度解析购物陷阱与机会淘宝顺手买一件的东西是正品吗?是否值得入手?深度解析购物陷阱与机会

    在淘宝结算页面,那个永远比主商品便宜30%到50%的”顺手买一件”推荐位,就像超市收银台旁的糖果架,用难以抗拒的骨折价刺激着消费者的购买欲。但当我们看着9.9元的品牌护肤品小样,或19.9元的蓝牙耳机时,难免会产生疑惑:这些商品真的是正品吗?超低价背后是否存在消费陷阱? 一、解密平台推荐机制 1. …

    2026年9月26日 • 用户投稿
    100
  • readdir在Debian中的安全性问题

    readdir 是 linux 系统中用于列出目录内容的函数,通常在 头文件中声明。在 debian(以及大多数 linux 发行版)中,readdir 函数本身并不直接引入额外的安全风险。然而,当它与系统其他部分结合使用时,可能会受到一些潜在的安全威胁。以下是一些相关的考虑点: 动态链接器劫持和 …

    2026年9月26日
    100
  • 微信聊天记录怎么恢复到原手机_微信原机聊天恢复方法

    微信聊天记录怎么恢复到原手机_微信原机聊天恢复方法微信聊天记录怎么恢复到原手机_微信原机聊天恢复方法微信聊天记录怎么恢复到原手机_微信原机聊天恢复方法微信聊天记录怎么恢复到原手机_微信原机聊天恢复方法

    可通过微信迁移、电脑备份或系统级备份三种方式恢复原设备聊天记录。1、使用微信“迁移聊天记录到本机”功能,通过Wi-Fi将另一设备的记录传回原手机;2、在电脑微信选择“恢复聊天记录至手机”,导入本地备份文件;3、通过iCloud或手机云服务从整机备份中还原包含微信数据的备份点,完成整体恢复。 如果您在…

    2026年9月26日 • 用户投稿
    000
  • sublime怎么调试python代码_sublime配置Python调试环境教程

    sublime怎么调试python代码_sublime配置Python调试环境教程sublime怎么调试python代码_sublime配置Python调试环境教程sublime怎么调试python代码_sublime配置Python调试环境教程sublime怎么调试python代码_sublime配置Python调试环境教程

    配置Sublime Text的Python调试环境需安装SublimeREPL插件以运行交互式脚本,设置自定义Build System实现快捷运行输出,通过插入import pdb; pdb.set_trace()使用pdb进行简单断点调试,并可搭配Anaconda或LSP插件提升编码效率,适用于轻…

    2026年9月26日 • 用户投稿
    000
  • Java 8中的Stream API有哪些常用操作?它是惰性求值的吗?

    Java 8中的Stream API有哪些常用操作?它是惰性求值的吗?Java 8中的Stream API有哪些常用操作?它是惰性求值的吗?Java 8中的Stream API有哪些常用操作?它是惰性求值的吗?Java 8中的Stream API有哪些常用操作?它是惰性求值的吗?

    答案:Java 8的Stream API通过中间操作和终端操作实现惰性求值,提升性能与代码可读性。中间操作如filter、map返回新流且惰性执行,终端操作如forEach、collect触发计算并产生结果。惰性求值避免不必要的计算,支持短路操作,优化管道处理,适用于无限流。使用时需避免副作用、重复…

    2026年9月26日 • 用户投稿
    100
  • windows pagefile.sys是什么可以删除吗_pagefile.sys文件详解与删除指南

    windows pagefile.sys是什么可以删除吗_pagefile.sys文件详解与删除指南windows pagefile.sys是什么可以删除吗_pagefile.sys文件详解与删除指南windows pagefile.sys是什么可以删除吗_pagefile.sys文件详解与删除指南windows pagefile.sys是什么可以删除吗_pagefile.sys文件详解与删除指南

    pagefile.sys是Windows虚拟内存文件,用于缓解物理内存压力,直接删除会导致系统不稳定或蓝屏。应通过“高级系统设置”中的虚拟内存选项禁用或迁移,避免手动删除。可将其移至非系统盘或设置自定义大小以优化性能,建议初始值为内存1倍、最大值2倍,并通过命令行工具查看配置状态。 如果您发现Win…

    2026年9月26日 • 用户投稿
    000

发表回复

登录后才能评论
关注微信