python实现word文档批量转成自定义格式的excel文档
python实现word转成自定义格式的excel文档(解决思路和代码)
支持按照文件夹去批量处理,也可以单独一个文件进行处理,并且可以自定义标识符
最近在开发一个答题类的小程序,到了录入试题进行测试的时候了,发现一个问题,试题都是word文档格式的,每份有100题左右,拿到的第一份试题,光是段落数目就有800个。而且可能有几十份这样的试题。
而word文档是没有固定格式的,想批量录入关系型数据库mysql,必须先转成excel文档。这个如果是手动一个个粘贴到excel表格,那就头大了。
我最终需要的excel文档结构是这样的:每道题独立占1行,每1列是这道题的一项内容,大概就是问题、选项A、选项B等等。
但word文档是这种结构,如果按照网上通用的方式去转,基本上你得到的结果就是一大坨文字都在一格里,根本不符合需求。
最后我想到了一个解决思路,可以实现这个需求,先看看我转出来的结果:
这个格式虽然跟最终的有点差别,但是只要在excel文档或者在代码里稍微再修改一下,就能完全符合要求了。
废话少说,先贴出代码,看得懂的可以直接拿去用,看不懂的,可以看我后面的具体说明。
已经把它封装成通用脚本了,你可以直接调用。
import pandas as pd
import os# 初始处理函数1,先对初始处理结果进行判断
def initail_handle_by_range(file_path, max_page_num, split_str):df = pd.read_table(file_path)# 2、先转成SeriesS = pd.Series(df['column1'].values)# 3、转成列表,列表的每个元素就是每个段落list = S.tolist()# 传入一个max_page_num# 4、遍历列表,取出每个段落,按“.”切割,取出第一个元素进行判断,如果它是题号,就应该得到"1"或者"10"index_list = []for content in list:try:# 不是每个段落都有“.”可以切割的,会报错,报错就跳过first_str = content.split('%s'%split_str)[0]# 5、根据最大的题号,自动生成匹配的字符串,用来匹配题号(每个匹配字符串都放在patch_list中)patch_list = ['%d' % i for i in range(1, max_page_num + 1)]# 6、比对切割得到的第一个元素,如果它在匹配的字符串中,就获取它在列表中的索引,并把获取到的结果添加到列表index_list中,这就知道了每道题的开头在l中的哪个位置了if first_str in patch_list:index = list.index(content)index_list.append(index)except:pass# 7、根据索引列表,我们可以知道每道题的第一段和最后一段在l中的哪个位置# index_list = [0, 8, 16]# print(index_list)# 先计算每道题长度是否一致,不一致的,设置is_same_length = Falseis_same_length = Truelength = index_list[1] - index_list[0]max_index = len(list)for i in index_list:# 如果i不是最后一个,那么start就是i,end就是i的下一个if i < index_list[-1]:start = iend = index_list[index_list.index(i) + 1]else:start = iend = max_index# 判断长度是否一致,不一致就对长度进行比较,把大的赋值给长度if (end - start) != length:is_same_length = Falseif (end - start) > length:length = (end - start)result = [is_same_length, index_list, list, length]return result# 初始处理函数1,先对初始处理结果进行判断
def initail_handle_by_patchstr(file_path, patch_str, split_str):df = pd.read_table(file_path)# 2、先转成SeriesS = pd.Series(df['column1'].values)# 3、转成列表,列表的每个元素就是每个段落list = S.tolist()# 传入一个max_page_num# 4、遍历列表,取出每个段落,按“.”切割,取出第一个元素进行判断,如果它是题号,就应该得到"1"或者"10"index_list = []for content in list:try:# 不是每个段落都有“.”可以切割的,会报错,报错就跳过first_str = content.split('%s'%split_str)[0]# 6、比对切割得到的第一个元素,如果它在匹配的字符串中,就获取它在列表中的索引,并把获取到的结果添加到列表index_list中,这就知道了每道题的开头在l中的哪个位置了if first_str == patch_str:index = list.index(content)index_list.append(index)except:pass# 7、根据索引列表,我们可以知道每道题的第一段和最后一段在l中的哪个位置# index_list = [0, 8, 16]# print(index_list)# 先计算每道题长度是否一致,不一致的,设置is_same_length = Falseis_same_length = Truelength = index_list[1] - index_list[0]max_index = len(list)for i in index_list:# 如果i不是最后一个,那么start就是i,end就是i的下一个if i < index_list[-1]:start = iend = index_list[index_list.index(i) + 1]else:start = iend = max_index# 判断长度是否一致,不一致就对长度进行比较,把大的赋值给长度if (end - start) != length:is_same_length = Falseif (end - start) > length:length = (end - start)result = [is_same_length, index_list, list, length]return result# 传入一个文件路径和一个匹配的字符串,至少2个符号,例如"#."
def file_handle_by_patchstr(file_path, patch_str, split_str):result = initail_handle_by_patchstr(file_path, patch_str, split_str)# 接收初始处理函数的结果is_same_length = result[0]index_list = result[1]list = result[2]length = result[3]# 先根据每道题的长度构造一个空的dict,最后用来生成dataFramedict = {}for i in range(1, (length + 1)):dict['colomn%d' % i] = []# print(dict)max_index = len(list)for i in index_list:# 如果i不是最后一个,那么start就是i,end就是i的下一个if i < index_list[-1]:start = iend = index_list[index_list.index(i) + 1]else:start = iend = max_index# 遍历一轮获得的结果就是我们要写入excel的一行colomn = 1for index in range(start, end):# 遍历一次获得的结果就是我们要写入excel的一格content = list[index]# 每遍历一次就在一个dict中取出某一列,给它加上这个数据dict['colomn%d' % colomn].append(content)colomn += 1# 在遍历到最后一轮的时候if index == (end - 1):# 判断是否需要插入空值if not is_same_length and ((end - start) < length):# 可能缺了2列,也可能缺了1列content = ''# 如果只是缺了一列,在现有的index上,加1,就是下一列,补上空值if (length - (end - start)) == 1:colomn = (end - start) + 1dict['colomn%d' % (colomn)].append(content)else:# 如果缺失了2列以上,就遍历,给之后的每一列都补上空值for i in range(length - (end - start)):colomn = length - idict['colomn%d' % (colomn)].append(content)final_df = pd.DataFrame(dict)new_file_path = file_path.split('.')[0] + '.xlsx'final_df.to_excel(r'%s' % new_file_path)def file_handle_by_range(file_path, max_page_num, split_str):result = initail_handle_by_range(file_path, max_page_num, split_str)# 接收初始处理函数的结果is_same_length = result[0]index_list = result[1]list = result[2]length = result[3]# 先根据每道题的长度构造一个空的dict,最后用来生成dataFramedict = {}for i in range(1,(length+1)):dict['colomn%d'%i] = []max_index = len(list)for i in index_list:# 如果i不是最后一个,那么start就是i,end就是i的下一个if i < index_list[-1]:start = iend = index_list[index_list.index(i) + 1]else:start = iend = max_index# 遍历一轮获得的结果就是我们要写入excel的一行colomn = 1for index in range(start, end):# 遍历一次获得的结果就是我们要写入excel的一格content = list[index]# 每遍历一次就在一个dict中取出某一列,给它加上这个数据dict['colomn%d' % colomn].append(content)colomn += 1# 在遍历到最后一轮的时候if index == (end - 1):# 判断是否需要插入空值if not is_same_length and ((end-start)<length):# 可能缺了2列,也可能缺了1列content = ''# 如果只是缺了一列,在现有的index上,加1,就是下一列,补上空值if (length-(end-start)) == 1:colomn = (end-start) +1dict['colomn%d'% (colomn)].append(content)else:# 如果缺失了2列以上,就遍历,给之后的每一列都补上空值# 8-6 = 2, i = 0, 1for i in range(length-(end-start)):colomn = length - idict['colomn%d' % (colomn)].append(content)final_df = pd.DataFrame(dict)new_file_path = file_path.split('.')[0] + '.xlsx'final_df.to_excel(r'%s'%new_file_path)# 传入一个文件夹路径,最大的迭代数字,切割字符串
def dir_handle_by_range(dir_path, max_page_num, split_str):files = os.listdir(dir_path) # 获取当前目录的所有文件及文件夹for file in files:file_path = os.path.join(dir_path, file) # 遍历获取每个文件的绝对路径result = initail_handle_by_range(file_path, max_page_num, split_str)# 接收初始处理函数的结果is_same_length = result[0]index_list = result[1]list = result[2]length = result[3]# 先根据每道题的长度构造一个空的dict,最后用来生成dataFramedict = {}for i in range(1, (length + 1)):dict['colomn%d' % i] = []max_index = len(list)for i in index_list:# 如果i不是最后一个,那么start就是i,end就是i的下一个if i < index_list[-1]:start = iend = index_list[index_list.index(i) + 1]else:start = iend = max_index# 遍历一轮获得的结果就是我们要写入excel的一行colomn = 1for index in range(start, end):# 遍历一次获得的结果就是我们要写入excel的一格content = list[index]# 每遍历一次就在一个dict中取出某一列,给它加上这个数据dict['colomn%d' % colomn].append(content)colomn += 1# 在遍历到最后一轮的时候if index == (end - 1):# 判断是否需要插入空值if not is_same_length and ((end - start) < length):# 可能缺了2列,也可能缺了1列content = ''# 如果只是缺了一列,在现有的index上,加1,就是下一列,补上空值if (length - (end - start)) == 1:colomn = (end - start) + 1dict['colomn%d' % (colomn)].append(content)else:# 如果缺失了2列以上,就遍历,给之后的每一列都补上空值for i in range(length - (end - start)):colomn = length - idict['colomn%d' % (colomn)].append(content)final_df = pd.DataFrame(dict)new_file_path = file_path.split('.')[0] + '.xlsx'final_df.to_excel(r'%s' % new_file_path)# 传入一个文件夹路径和一个匹配的字符串,至少2个符号,例如"#."
def dir_handle_by_patchstr(dir_path, patch_str, split_str):files = os.listdir(dir_path) # 获取目录的所有文件及文件夹for file in files:file_path = os.path.join(dir_path, file) # 遍历获取每个文件的绝对路径print(file_path)result = initail_handle_by_patchstr(file_path, patch_str, split_str)# 接收初始处理函数的结果is_same_length = result[0]index_list = result[1]list = result[2]length = result[3]# 先根据每道题的长度构造一个空的dict,最后用来生成dataFramedict = {}for i in range(1, (length + 1)):dict['colomn%d' % i] = []# print(dict)max_index = len(list)for i in index_list:# 如果i不是最后一个,那么start就是i,end就是i的下一个if i < index_list[-1]:start = iend = index_list[index_list.index(i) + 1]else:start = iend = max_index# 遍历一轮获得的结果就是我们要写入excel的一行colomn = 1for index in range(start, end):# 遍历一次获得的结果就是我们要写入excel的一格content = list[index]# 每遍历一次就在一个dict中取出某一列,给它加上这个数据dict['colomn%d' % colomn].append(content)colomn += 1# 在遍历到最后一轮的时候if index == (end - 1):# 判断是否需要插入空值if not is_same_length and ((end - start) < length):# 可能缺了2列,也可能缺了1列content = ''# 如果只是缺了一列,在现有的index上,加1,就是下一列,补上空值if (length - (end - start)) == 1:colomn = (end - start) + 1dict['colomn%d' % (colomn)].append(content)else:# 如果缺失了2列以上,就遍历,给之后的每一列都补上空值for i in range(length - (end - start)):colomn = length - idict['colomn%d' % (colomn)].append(content)final_df = pd.DataFrame(dict)print(final_df)print(file_path)new_file_path = file_path.split('.')[0] + '.xlsx'print(new_file_path)final_df.to_excel(r'%s' % new_file_path)if __name__ == '__main__':# 文件路径# file_path = r'C:\Users\Administrator\PycharmProjects\exchange_file\2018-04 技能操作真题.txt'# 文件夹路径dir_path = r'C:\Users\Administrator\PycharmProjects\exchange_file\mytest'# 根据数字处理具体文件,参数传文件路径,可迭代的最大数可自定义,分隔符也自定义# file_handle_by_range(file_path, 100, '.')# 根据自定义匹配符处理具体文件,参数传文件路径,匹配符可以自定义,切割符也可以自定义# file_handle_by_patchstr(file_path, '#', '.')# 根据数字处理具体整个文件夹,参数传文件路径,可迭代的最大数可自定义,分隔符也自定义# dir_handle_by_range(dir_path, 100, '.')# 根据自定义匹配符处理具体文件夹,参数传文件路径,匹配符可以自定义,切割符也可以自定义# dir_handle_by_patchstr(dir_path, '#', '.')
一、先说一下实现这个需求的处理逻辑
解决这个需求的关键点是什么:
1、python怎么读取这个文件的内容?
python有相关的word操作库可以读取,但是读取到的结果不方便操作。我们最终是要让它生成excel文件的,所以可以用python非常强大的科学计算包pandas来读取操作数据更好。
但pandas不能直接读取word文件,所以,需要先把它转成txt文档,这一步很简单,打开word,全部复制到一份新的txt文件中就行了。(注意要在第一行给它加上列名,我直接加了个colomn1,代表是第一列)
简单处理后的txt文档的结构类似这样:
2、读取到的数据如何处理?
使用pandas读取到的数据是一个dataFrame,dataFrame的结构就类似于我们在excel文档里面那样行列分明的。但是,它从txt读取出来的格式是全部内容都视为1列的,而txt中的每一段,在它这里就是每一行(注意是每一段对应一行,而不是每一行对应每一行)
预览一下:结果显示800行,1列。也就是在txt文档中有800个段落。
3、接下来怎么处理呢?
pandas强大的地方就在这里了,它可以直接把这1列的内容全部转成Series,Series是什么你可以不用管,你只需要知道Series可以直接转成列表list就行了。有了list我们就方便操作了。
以上几步就实现了从word里面读取数据,并转化成python的数据类型list了。list里面的每个元素,就等同于我们word里面的每一个段落。
控制台打印出来的就是这样:
下面的800是计算出这个列表的长度,代表有800个元素。
接下来我们的需求就变成了:怎么把一个列表,转成有明确行列结构的excel表格了。
这个要分为2种情况来说:
1、你的word文档结构相对合理些,每道题都固定是X个段落(例如每道题都是8个段落),这个解决就很简单了。因为这种情况对应就是在list中,每8个元素构成了1道题,你只要按照规律,8个8个取出,最后批量写入excel就行了。(这种解决起来比较简单,就不详细说了)
2、另一种情况比较麻烦,就是word文档的结构不规范,有的题目可能是8个段落,有的可能是7段,有的是6段。那么要怎么解决呢?
解决这个问题有几个关键点:
1、excel表格是行列结构的,它每一行的数据来源于这个txt文档的第几行?(也就是list里面的第几个元素)
所以我们只要把每道题在list中的索引找出来就行了。
观察一下源数据,它每道题的开头都是数字加1个英文符号“.”,例如:“1.”和“2.”,最大的是"100.",并且其他段落的开头都不会出现这个结构。那么就简单了,我先构造出一个patch_list=[‘1’, ‘2’, ‘3’…‘100’],用来做匹配。
然后再遍历源数据列表,对列表的每个元素按“.”号切割,切割后拿到它的第一个元素,拿这个元素跟pacth_lis进行匹配,如果它是在patch_list中的,就代表它是每道题的开头。此时就记录下它的索引,并且把这个索引值存放到一个新列表index_list中。
下面是我获取到的index_list:
0代表了第一道题是在列表的第1个元素开始的,8代表第二道题在列表的第9个元素开始。
于是我们就知道每道题的开头是在列表中的哪个位置了。
2、拿到了每道题的索引,然后怎么做呢?
最终我们是要转存到excel文档中的, pandas怎么转excel?
很简单的,只要你构造出一个dataFrame出来,调用pandas的to_excel方法,就能存入excel文档了。
3、问题的关键就变成了,有了每道题的索引,怎么把它转成dataFrame结构。
下面演示一下,假如你想要构造一个dataFrame,需要什么样的数据结构,构造出来的dataFrame在控制台的输出结果是怎么样的,最后生成的excel表格是怎么样的。
dict = {'colomn1': ['问题1', '问题2', '问题3'],'colomn2': ["A:问题1的A选项", "A:问题2的A选项", "A:问题3的A选项"],'colomn3': ['B:问题1的B选项', 'B:问题2的B选项', 'B:问题3的B选项']}df = pd.DataFrame(dict)print(df)df.to_excel(r'C:\Users\Administrator\PycharmProjects\exchange_file\test.xlsx')
这个就是调用pandas的DataFrame方法,用字典dict生成的一个dataFrame数据。
这个dataFrame在控制台打印出来就是:
这个结构存入excel就是对应表格的行和列了。这个结构就符合我的实际需求了。
所以我们要构造出这个dataframe的关键就是:
把所有数据梳理一遍,构造成类似这样的一个字典:
dict = {'colomn1': ['问题1', '问题2', '问题3'],'colomn2': ["A:问题1的A选项", "A:问题2的A选项", "A:问题3的A选项"],'colomn3': ['B:问题1的B选项', 'B:问题2的B选项', 'B:问题3的B选项']}
那么怎么构建这个dict呢?
我们源数据转出来的list结构是类似这样的:
list = [‘问题1’,“A:问题1的A选项”, ‘B:问题1的B选项’…‘问题2’,“A:问题2的A选项”, ‘B:问题2的B选项’]
而我们前面得到的index_list=[0, 8, 16。。。。]
它记录了“问题1”,“问题2”等等直到“问题100”是在哪个位置开始的,所以我们只需要把index_list遍历一下,轮流取出它的每个元素,它就是每道题的开始位置,然后拿到紧跟在这个元素的下一个是什么,用这个减去1就知道了每道题的开始位置start和结尾位置end是多少了。
接着使用
for i in range(start, end):content = list[i]
就可以轮番从list中取出每道题的各项内容,取到的第一个就加到dict的colomn1列表中,第二个就加到dict的colomn2中,按照这个规律,就能把list的内容分开插入到dict中的各个列表中了。
但在这个过程中,可能你每道题的段落数目不一致,也就是你按照这个规律从list中取出的元素,可能每次取出的数量都不一样。这点需要注意,如果没有对它进行处理,最后会导致转出来的文件内容错位了,例如你的文档里面,第一题有8个段落,第二题只有7个,第三题有8个段落,没处理这个问题的话,最后第三题的第8个段落,就会跑到第7题那边了。并且最终dataFrame会无法生成excel文件。
那么这个问题怎么解决呢?
在正式调用处理函数生成excel文件之前,可以先对文件预处理,拿到它们的数据进行判断,如果判断到它每个间隔不一样,有的缺少段落,那么就让数据预处理函数返回一个值为False,间隔一样就返回True。接着在真正的数据提取环节,根据这个进行判断,如果判断到它值是Fales,那么就在每一轮遍历提取数据的最后一次遍历,一次性在它后面的缺失数据的列加上空字符串,作为占位用,这样最后得到的列表长度就都一样了,并且在最后生成的excel表中,它是一个空格。
最后用dict生成dataFrame,再写入excel文档,我们就大功告成了。
二、再说一下具体怎么使用:
一、运行必须的工具
1、python解释器(pycharm或其他);
2、python自带模块:os;
3、自行安装模块:pandas,openpyxl;
自行安装的模块,在控制台pip install pandas和pip install openpyxl就行了。
二、怎么调用:
1、先要做数据预处理:
先要把word文档的内容复制到txt文档中,并且在第一行加上"column1",处理后像下面这样:
接着要看你的文档内容是否有题号,如果有的话:
比如像我这个,有具体的题号1-100题,并且它的写法都是“1.”,在题号后面跟了个英文字符’.‘,顺序递增到100。
那么你就可以调用file_handle_by_range。
你给它传第一个参数是个具体的文件路径,它就会去打开这个文件,读取里面的内容。
传的第二个参数是100,它就会自动生成1到100的字符串,用来匹配识别你的每道题的开头在哪个位置。(如果你最大的题号是200,就写200,可以写多,但不能写少,少了识别到的内容会缺失)
传的第三个参数是’.‘,它就会按照’.'去切割每一行的内容,拿到第一个“.”号前面的内容,用来跟它生成的匹配字符做比对,比对成功了,它就默认该行是你想要写到excel表格里的第一列,接在它后面的每个段落,会自动插入到它后面的列。
直到匹配到下一个“数字.”开头的,又重复这个过程。
如果你的文档里面并不是像我这样,没有顺序递增的题号,你可以手动给每个你想要放在表格中第一列的段落,在它前面加标识符,例如“####.”,注意最后是有个小点的。
像下面这样:
接着调用
file_handle_by_patchstr(file_path, '####', '.')
那么它就默认按照’.‘去切割每行内容,并且按照####来匹配识别切到的内容,如果切到在’.'前面的是“####”,那么它就默认这一段是你想存到excel表第一列的段落,在它后面的几段,都会按照每个段落存入一格去处理。直到下一个“####.”出现。
2、可调用的有4个函数:
2.1、假如你只想处理一个具体的文档,并且它有具体的题号,最大题号是100,并且它后面跟的是一个’.’,那么就按照下面这个调用
file_path = r'C:\Users\Administrator\PycharmProjects\exchange_file\2018-04 技能操作真题.txt'file_handle_by_range(file_path, 100, '.')
2.2、根据自定义匹配符处理具体文件,参数传文件路径,匹配符可以自定义,切割符也可以自定义
file_path = r'C:\Users\Administrator\PycharmProjects\exchange_file\2018-04 技能操作真题.txt'
file_handle_by_patchstr(file_path, '#', '.')
2.3、根据数字处理具体整个文件夹,参数传文件路径,可迭代的最大数可自定义,分隔符也自定义。(注意文件夹路径,最后是不跟文件名的,它是个文件夹,不是具体文件路径)
# 文件夹路径
dir_path = r'C:\Users\Administrator\PycharmProjects\exchange_file\mytest'
dir_handle_by_range(dir_path, 100, '.')
2.4、根据自定义匹配符处理具体文件夹,参数传文件路径,匹配符可以自定义,切割符也可以自定义
# 文件夹路径
dir_path = r'C:\Users\Administrator\PycharmProjects\exchange_file\mytest'
dir_handle_by_patchstr(dir_path, '#', '.')
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- oracle的几种备份区别!
oracle的几种备份区别!视对数据安全性的要求,数据库备份可以采用逻辑备份、用户管理备份、RMAN备份或STANDBY热备份。1、逻辑备份:、逻辑备份是用oracle提供的备份命令exp通过命令行方式进行备份。适用于非7*24系统,且数据库处于非归档模式。它的特点是备份和恢复都比较简单…...
2024/4/18 16:44:54 - 数据结构之冒泡排序的实现(C语言)
#include <stdio.h> void BubbleSort(int *a, int len) {int count,i,j,temp;for (count=0;count<len-1;count++)//总共要进行len-1步排序{for (i=len-1;i>count;i--)//不断比较和交换相邻的两个数{if (a[i]<a[i-1]){temp=a[i];a[i]=a[i-1];a[i-1]=temp;}}print…...
2024/4/18 8:05:25 - 基于vue的动态表单自助建站工具
基于vue的动态表单自助建站工具 根据自己需求自助搭建移动端营销、投放、信息采集、推广、宣传等页面 主要用到的技术如下:"element-ui": "^2.4.5","vuedraggable": "^2.23.0","vue": "^2.6.10","vue-route…...
2024/4/17 16:15:37 - swfupload文件上传组件 服务端用servlet配置教程
swfupload是个不错的上传组件,可以实现无刷新上传图片,并返回自己想要的数据,今天写了一个用java servlet来作为服务端接收客户端文件,自己在项目中也有使用,功能是实现远程上传文件并返回上传后在服务端的文件路径。 1,在官网下载swfupload,地址:http://demo.swfupload.…...
2024/4/20 23:36:08 - 可执行jar包调用exe可执行文件,子进程堵塞
背景: 需要在项目的测试工具中添加一个按钮,点击后直接打开某exe工具。 这个工具的功能是导入txt文件,转为excel报表输出。 无奈解析了两行之后就停止不动了,也不报错。关闭测试工具后,就很顺畅的继续运行。 原因: txt转excel报表过程中,中间信息是存在内存中的,缓存区…...
2024/4/19 14:12:54 - oracle客户端备份导入导出数据库(exp,imp)
当从服务器上备份数据到本地 exp HPTDATA/HPTDATA@HPTDATA F:\backup\1.dmp 说明 exp是orcale 备份数据库操作语句第一个 HPTDATA 是服务器数据库用户名 ,第二个HPTDATA是服务器密码 “F:\backup\1.dmp”是备份到本地的路径,1.dmp 不用新建,可以随便给定名…...
2024/4/17 16:16:06 - 991“数据结构与C语言程序设计”考试大纲(2018版)
内容为学校官网内容,文章结尾有学校地址,如有帮助烦请点击大拇哥^_^。2018年“数据结构与C语言程序设计”考试内容包括“数据结构”与“C语言程序设计”两门课程的内容,各占比例50%。试卷满分为150分。 “数据结构”部分一、概述1.数据的逻辑结构与存储结构的基本概念;2.…...
2024/4/20 16:11:19 - Java中Filter、Servlet、Listener的学习
1、Filter的功能filter功能,它使用户可以改变一个 request和修改一个response. Filter 不是一个servlet,它不能产生一个response,它能够在一个request到达servlet之前预处理request,也可以在离开 servlet时处理response.换种说法,filter其实是一个”servlet chaining”(servle…...
2024/4/12 14:34:34 - 网站建设之PageAdmin Cms建站系统安装教程
现在很多站长或网络公司进行网站建设,后台大多都是使用一些成熟的网站管理系统,很大程度提升网站建设的效率,最近小编陆续发布了国内一些知名网站管理系统的安装教程,今天小编给大家介绍一下PageAdmin网站管理系统的安装,PageAdmin是目前使用最广的网站系统之一,开源可以…...
2024/4/19 10:28:59 - python将word表格转写入excel
Notes 想将一份 word 文件中的几个表格转写入 excel 文件中,后续用 excel 处理。 用到 python-docx 和 pandas 分别处理 word 和 excel。 安装 python-docx:pip install python-docx,它不接受 .doc 文件,先转存为 .docx。 下面从 test.docx 读入,写到 test.xlsx。 code fr…...
2024/4/17 16:15:13 - Oracle数据库运维、备份常用指令
Oracle数据库运维、备份常用指令1. Oracle数据泵备份导出1.1 准备工作在linux系统下创建导出结果存放的文件夹,切记要切换到oracle用户创建,否则会出现权限问题。su - oracle mkdir /home/oracle/dwcr_dumps如果使用root创建了文件夹,可是使用命令来修改文件权限。chown /ho…...
2024/4/17 16:16:37 - 【数据结构】数据结构C语言的实现【图(邻接表法)】
图(邻接表法)/** 邻接表的创建和图的遍历的代码实现*/ #include <stdio.h> #include <stdlib.h>#define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define OVERFLOW -2 #define MAX_NUM 20typedef int Status; typedef int QElemType; typedef char…...
2024/4/17 16:16:13 - Oracle数据库的冷备份及冷备份异地恢复方法
Oracle数据库的冷备份及冷备份异地恢复方法分类: Oracle2013-07-1109:06 51人阅读 评论(0) 收藏 举报如何对Oracle数据库进行冷备份呢?如果是冷备份异地恢复有需要做哪些设置呢?本文我们主要介绍这一方面的内容,接下来我们就开始接介绍。 一、冷备份 以oracle10g为例。 col…...
2024/4/17 16:16:44 - 我所学习的第二个建站程序是discuz论坛程序,那时候学校有论坛建站比赛
花了很久时间我学会了wordpress博客程序的搭建,正当我还在处于一种兴奋的状态时,新的挑战来了。那时候我们学校举办了一个论坛建设比赛,其中因为是全校的比赛,因此有很多人是来自专业的计算机系。 当时我也是犹豫了很久才打算加入这个论坛的比赛,因为我知道恐惧本身是来源…...
2024/4/17 16:15:24 - 如何使用ArcGIS将Excel数据转换为shp格式
如果经常使用ArcMap生成一些专题图,需要把Excel数据叠加到ArcGIS中,如果Excel数据中有坐标的话,可以很方便的把Excel数据转换成shp数据,这里讲解一下具体的操作步骤,希望能够对大家有所帮助。 步骤 第一步:获取Excel数据 打开水经注万能地图下载器,框选需要提取…...
2024/4/17 16:15:07 - PHP写入数据到Txt和Excel文件
第一部分:Yii导出TXT文件public function ExportTxt(){//设置基本信息header("Content-Type: application/force-download");header("Content-Type: application/octet-stream");header("Content-Type: application/download");header(Content-…...
2024/4/20 13:55:25 - oracle数据库的备份及升级
以oracle用户登陆数据库所在的服务器,例如家目录为/home./oracle.执行以下命令进行备份操作。sqlplus /nologconnect /as sysdbasql>createdirectory dump_bx as 指定一个存放dmp文件的目录;sql>grantread,write on directory dump_bx to boss数据库的用户名称 ;sql>…...
2024/4/19 17:56:42 - 五个最适合做博客的开源系统 开源免费大量精美模板使用!
今天给大家分享五个开源的博客系统,可用于免费创建自己的博客,也有大量精美的模板使用,也就是说你不懂技术,用了这五个开源系统也能创建自己的博客,至于创建博客的好处,想必大家都知道,可用户记录生活,分享技术,也能锻炼一下自己的文笔。一.wordpresswordpress老牌博客…...
2024/4/17 16:16:06 - 创建简单的servlet程序
前言最近打算将原本纯java自写库的服务器用servlet进行开发,在网上找了许多教程,都不是非常详细,于是自己便钻研一番,基本上能跑简单的servlet程序准备工具 jdk1.8tomcat9.0 IDE intellij idea 2016.2.1 步骤一:点击菜单栏的File->New->Project二:选择Web Applicat…...
2024/4/17 16:15:07 - Ubuntu tomcat7+Eclipse开发、部署servlet ----开发篇
时n天,终于靠着自己摸索+查资料,解决了Ubuntu下部署servlet的问题。最初在apache官网下载了tomcat8,按照网上的教程,写了个测试的servlet小程序,但总是运行不起来。后来想想可能是自己写的web.xml格式不对,于是考虑还是搭一个servlet的开发环境好了,修改web.xml总比自己…...
2024/4/17 16:16:07
最新文章
- LoRA(Low-Rank Adaptation)原理与应用
LoRA是一种用于调整和微调大型神经网络的技术,特别适用于直接微调整个网络参数成本高昂或不切实际的情况。 原理讲解: 1. 低秩适应(LoRA) LoRA的核心思想是在模型的权重矩阵中引入一个低秩结构,通常是通过添加一个可…...
2024/4/23 23:58:36 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - 《前端防坑》- JS基础 - 你觉得typeof nullValue === null 么?
问题 JS原始类型有6种Undefined, Null, Number, String, Boolean, Symbol共6种。 在对原始类型使用typeof进行判断时, typeof stringValue string typeof numberValue number 如果一个变量(nullValue)的值为null,那么typeof nullValue "?" const u …...
2024/4/22 15:54:28 - 【Redis】安装Redis后报ERR Client sent AUTH, but no password is set
一、问题描述 安装Redis后使用auth验证是否安装成功(或者其它应用访问redis时报错),报ERR Client sent AUTH, but no password is set 127.0.0.1:6379> auth 123456 (error) ERR Client sent AUTH, but no password is set二、问题解决 …...
2024/4/21 15:48:41 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/4/23 20:58:27 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/4/23 13:30:22 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/23 13:28:06 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/4/20 23:26:47 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/23 13:27:44 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/19 11:57:53 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/23 13:29:53 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/23 13:27:22 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/23 13:28:42 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/4/23 22:01:21 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/23 13:29:23 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/23 13:27:46 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/23 13:47:22 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/19 11:59:23 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/4/19 11:59:44 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/23 13:28:08 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/23 13:29:47 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/23 13:28:14 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/4/23 13:27:51 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/23 13:27:19 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57