- 博客(17)
- 收藏
- 关注
原创 【Effective Modern C++】Chapter 5 右值引用、移动语义和完美转发
Chapter 5 右值引用、移动语义和完美转发移动语义:用移动操作来替代昂贵的复制操作。完美转发:函数模板转发其他函数,目标函数将接收到与转发函数所接受的完全相同的实参。右值引用:让移动语义和完美转发成为可能。实际情况:std::move其实并没有移动任何东西…完美转发并不完美…移动操作的成本并不一定比复制低…移动语境中不一定能调到移动操作…"type&&"并不总是表示右值引用…C++规则:形参总是左值,即使其型别是右值引用。23. std::move &
2021-07-24 17:24:40
203
原创 Excel内容自动翻译
场景说明Excel内容自动翻译为英文。举例:英文描述列自动翻译前面的中文描述列实现使用Excel自带的WEBSERVICE函数调用在线翻译工具,使用FILTERXML解析翻译内容。在需要翻译的单元格(下面的B2替换为实际的单元格)填入以下数据:=FILTERXML(WEBSERVICE("http://fanyi.youdao.com/translate?&i="&B2&"&doctype=xml"),"//translation")解释说明:WEBSERV
2021-01-24 12:26:52
3450
2
原创 【Python CookBook】第七章:函数
用*参数接受任意数量的位置参数,用**参数接受任意数量的关键字参数,在*参数后面的参数为强制关键字参数,典型用法如下,args为序列,如列表和元组等,kwargs为字典。def anyargs(*args, **kwargs):强制关键字参数:放在某个*参数后或者单个*之后。强制关键字参数的调用必须指定。好处是表意清晰,增加可读性。def fun(*args, block=None):def fun(maxsize, *, block):# 调用:recv(1024, True) #..
2020-05-30 17:15:57
224
原创 【Python CookBook】第四章 迭代器与生成器
迭代器,可迭代对象,迭代器协议,生成器;next()函数,_iter_()函数,yield语句;以及如何自己创建一个迭代器或者可迭代对象,见:迭代器,生成器与协程反向迭代:reversed()函数。反向迭代需要对象的大小可预先确定或者本身实现了_reversed_()函数才行。>>> a = [1, 2, 3, 4]>>> for x in reversed(a):... print(x)...4321需要将生成器暴露外部状态,可将实现一个类,..
2020-05-28 11:12:06
231
原创 【Python CookBook】第一章 数据结构和算法
解压不确定个数或任意个数元素的可迭代对象时可用*星号表达式,得到的是一个列表(即使为空),*_ 可接受多个需要丢弃的元素。first, *middle, last = gradesfirst, *_ = grades队列使用:collections.deque使用deque(maxlen=N) 构造函数会新建一个固定大小的队列。当新的元素加入并且这个队列已满的时候,最老的元素会自动被移除掉。在队列两端插入或删除元素时间复杂度都是O(1)堆使用:heapqheapq 模块有..
2020-05-26 11:02:43
174
原创 pylint高频警告错误--原因及处理建议
二次开发Python代码中的警告(warning)与错误(Error)的原因分析及处理建议。按出现的频次排序,越靠前则出现的次数越多。建议使用analyze_pylint.py代码来执行pylint命令及分析报告,然后参照生成的csv文件及本文档进行修改,代码:http://code.huawei.com/y84107470/analyze_pylintWarningW0614(unu...
2019-06-20 11:14:05
19928
2
原创 迭代器,生成器与协程
迭代器,生成器与协程 —— 抛砖引玉在学习Python协程之前首先需要了解Python生成器的概念,而生成器又是一种特殊的迭代器,所以一切从迭代器开始迭代器(Iterators)迭代器是Python语言的一大特性可迭代什么是可迭代(可迭代对象)?遵循了可迭代协议的对象简单可理解为:凡是可以for循环的都属于iterable可迭代对象;列表,字典,字符串等等都是可迭代对象例子1....
2019-06-19 17:33:34
275
原创 Python解压文件中文乱码问题
原因在zipfile.py代码中line:1126处if flags & 0x800: # UTF-8 file names extension filename = filename.decode('utf-8')else: # Historical ZIP filename encoding filename = filename.decode('...
2019-04-19 11:35:34
1173
1
原创 python一键搭建HTTP服务
服务器端搭建服务:在要共享的目录下打开cmd,输入下面的命令,并保持cmd窗口打开。# 后面的端口号可更改python 3>> python -m http.server 8001python 2>> python -m SimpleHTTPServer 8001获取本机IP:在cmd输入ipconfig查询本机ip客户端打开浏览器,输入服务器端的I...
2018-11-27 15:30:35
455
原创 python删除N天前文件
python删除N天前文件注:文件最近修改时间 :os.path.getmtime(file)文件创建时间:os.path.getctime(file)文件最近访问时间:os.path.getatime(file)import osimport sysimport timedef remove_files(breday, path): bretime = time.tim...
2018-11-27 11:20:16
3405
1
原创 Python输出xml文件
代码实例:from xml.dom import minidomimport osdef get_cur_path(): return os.getcwd()def make_xml(): # 创建Document xml = minidom.Document() # 创建root节点 root = xml.createElement('r...
2018-10-31 12:04:19
3510
原创 Python多进程 并发 multiprocessing库
库:multipprocessing实例:import multiprocessingimport timedef action(sub_process_name): for i in range(3): time.sleep(3) print("{}:now print {}".format(sub_process_name, i))if...
2018-10-26 10:32:04
182
原创 Windows中ls不是内部指令
Windows中没有ls命令,与之相对应的是dir命令,故解决途径有二:直接使用dir命令,作用相同如果觉得还是ls命令用着顺手,那么加一个即可,步骤如下:新建txt文本,输入以下内容@echo off dir 另存为,命名为“ls.bat",保存类型为”所有文件“,保存将该批处理文件ls.bat放入C:\Windows\System32路径下,此时再使用ls即...
2018-09-18 10:46:06
240
原创 Python处理excel文件
Python处理excel文件 这里只介绍几种常用的库。对于2003以前的excel版本,即.xls文件,只能用xlrd和xlwt库来处理;对于2003及以后的excel文件,即.xlsx文件,需要使用openpyxl库来处理,这里着重介绍这三个第三方库。 注:Workbook是对工作簿(excel)的抽象,Worksheet是对表格(sheet)的抽象,Cell是对单元格的抽...
2018-09-04 20:17:25
365
原创 Windows右键新建MarkDown文件
Windows右键新建MarkDown文件在桌面新建一个txt,输入一下内容Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\.md\ShellNew]"NullFile"="""FileName"="template.md"另存为,加后缀.reg,保存类型为.txt,编码为Unicode
2018-09-01 12:23:40
2465
2
原创 有c/c++的基础快速上手python总结
Python语法Python基础数据类型和变量python没有 || && 等,用and, or, not 字符串和编码ASCII(仅英文) ,Unicode(所有语言编码,但是耗一倍空间) ,UTF-8 (前两者折中,可变长编码,建议使用)ord()函数获取字符的整数表示 ,chr()函数把编码转换为对应的字符 >&
2018-08-20 11:45:49
1464
1
原创 Gtest简单使用(VS2017)
1、下载googletest代码https://github.com/google/googletest得到压缩包:解压并进入msvc文件夹:googletest-master\googletest\msvc2、打开gtest.sln文件因为我的VS是2017版,下载的gtest对应的是2010版,所以打开会提示选择目标SDK版本和升级平台工具集,点确定即可。打开后如下...
2018-07-24 11:57:58
7284
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人