- 博客(42)
- 收藏
- 关注
原创 【ECMAScript6】async和await
async函数返回一个Promise对象,该对象的状态取决于函数返回值,如果函数返回非Promise对象或者返回成功状态的Promise,则这个函数返回的Promise对象状态为成功,如果函数返回失败的Promise对象或者抛出错误,则这个函数返回的Promise对象状态为失败。...
2022-06-30 13:20:44
245
原创 【ECMAScript6】类Class
Class是ES6中的一个语法糖,底层依然是构造函数,故它所实现的大部分功能ES5都能完成,但是Class可以使对象原型的写法更加清晰,更像面向对象编程的语法。
2022-06-30 13:18:49
211
原创 【ECMAScript6】代理与反射
ECMAScript 6新增的代理和反射为开发者提供了拦截并向基本操作嵌入 额外行为的能力。具体地说,可以给目标对象定义一个关联的代理对 象,而这个代理对象可以作为抽象的目标对象来使用。在对目标对象的 各种操作影响目标对象之前,可以在代理对象中对这些操作加以控制。...
2022-06-30 13:13:56
138
原创 【ECMAScript6】Promise
Promise 是 ES6 引入的异步编程的新解决方案。语法上 Promise 是一个构造函数,用来封装异步操作并可以获取其成功或失败的结果。
2022-06-30 13:12:10
194
原创 【ECMAScript6】迭代器与生成器
迭代器(Iterator)是一种接口,为各种不同数据结构提供统一的访问机制。任何数据结构只要部署Iterator接口,就可以完成遍历操作。生成器其实是一个特殊的函数,主要用于异步编程。
2022-06-30 13:05:44
145
原创 WPF中实现主窗口与子窗口的相互传值
在使用WPF的时候,我们经常会用到窗体之间传值,下面示例主窗口传值到子窗口,子窗口传值到主窗口的方法。一、主窗口向子窗口传值主窗口向子窗口传值主要方法就是在子窗口建立一个接收主窗口值的变量,然后实现传值。主窗口的Xaml代码:<Grid> <TextBox x:Name="tb_message" HorizontalAlignment="Left" Height="35" Margin="232,80,0,0" TextWrapping="Wrap" Te
2021-01-17 21:23:48
6430
1
原创 Python数据分析:Numpy、Pandas、Matplotlib的安装
第一步:找到安装Python的路径下的Script文件夹,进入第二步:键盘按住shift键,然后按下鼠标左键,出现powershell选项并点击第三步:输入指令pip install Numpy -i https://pypi.tuna.tsinghua.edu.cn/simplepip install Pandas -i https://pypi.tuna.tsinghua.edu.cn/simplepip install Matplotlib -i https://pypi.tu...
2021-01-15 18:21:55
589
原创 Python数据分析:Jupyter安装及使用
一、Jupyter安装第一步:找到安装Python的路径下的Script文件夹,进入第二步:键盘按住shift键,然后按下鼠标左键,出现powershell选项并点击第三步:输入指令 pip install jupyter -i https://pypi.tuna.tsinghua.edu.cn/simple提示安装成功就行了。(如果失败,请先查看pip是否安装)二、Jupyter使用第一步:找到安装Python的路径下的Script文件夹,进入第二步:键盘按住shift键.
2021-01-15 18:20:42
893
原创 Python基础学习:股票爬虫练习
指标要求:• 按周定投(每周四定投1手股票,股票当日收盘价*100)• 投入周期:2019/01/01 - 2019/12/31 回测计算指标• 投入本金• 期末总资产(注意:期末资产按今天之前的最后一个交易日的价格计算)• 期末总收益• 定投收益率• 最大回撤率• 每日收益率曲线(注意:只计算投资期间的每日收益率)注:最大回撤计算方法returns = [1, 1.01, 1.02, 0.98, 1.0, 0.97]max_draw_down = 0 # 最大
2021-01-15 18:20:23
520
原创 Python基础学习:正则表达式
一、Python常用正则表达式符号二、正则表达式简单运用import relog = '''now: 2020-04-15 23:44:34 id: STU001 status: noksssnow: 2020-04-16 03:44:34 id: STU002 status: nokanow: 2020-04-17 23:04:34 id: STU003 status: nokddnow: 2020-04-18 23:40:31 .
2021-01-15 18:19:16
165
原创 Python基础学习:爬虫基础
一、requests外部库引入requests库是Python的第三方库,对于爬虫来说是一个不错的工具。那么,requests库是如何安装的呢?无论你的python版本是官网下载的本地版本还是通过PyCharm软件下载的Python虚拟环境,下面操作都有效:第一步:找到你python的安装目录下面的Script文件夹第二步:进入Script文件夹,左手按住shift键,右手点击鼠标右键,然后选择 ‘在此处打开PowerShell窗口’,然后出现下图:第三步:输入指令pip .
2021-01-15 18:17:48
1142
原创 Python基础学习:文件读取
文件读取:常用的文件读取方法:file = open('thefile.txt') 读文件file = open('thefile.txt', 'w') 写文件 每次通过w模式打开文件 以前文件内容会全部清空content = file.read() 读取所有内容content_part = file.read(100) 读取固定字节content_oneline = file.readline() 读取一行内容content_all = file.readlines()file.
2021-01-15 18:16:36
656
原创 Python基础学习:面向对象
一、添加模块所在路径import syssys.path.append('H:\hobby\python\python')二、面向对象2.1 面向对象基本操作class MyClass(object): # MyClass继承于object类 passclass DemoClass: flag = True # 类属性 # 所有的实例方法定义是必须以self作为第一个参数 def __init__(self, a, b, c): #
2021-01-15 18:15:53
383
原创 Python基础学习:基本函数与模块引入
一、基本函数1.1 带位置参数的函数# 位置参数def add(a, b): return a + bprint(add(1, 2))def prt(a, b): print("a:", a) print("b:", b)prt(1, 3)prt(b=1, a=3)prt(1, b=2)运行结果:3a: 1b: 3a: 3b: 1a: 1b: 21.2 带默认参数的函数# 默认参数def add(a, b=10): .
2021-01-15 18:15:21
566
原创 Python基础学习:列表、字典、控制结构
一、列表1、列表的构建list2 = [1, 1, 1]s = ['哈哈', 2, 'tim', [2, 1, 3], list2]print(type(s))print(s)运行结果:<class 'list'>['哈哈', 2, 'tim', [2, 1, 3], [1, 1, 1]]2、列表常用方法列表常用方法:1、list.append(obj) 在list结尾加上列表元素obj2、list.reverse() 改变list本身 没有返回值.
2021-01-15 18:14:32
444
原创 Python基础学习:基本语法
1.1 输入输出print("hello python")print("a", "b", "c")print("hello python", end='')a = int(input('请输入一个数字:')) # input返回值类型是字符串print(a)print(type(a)) # type函数:查看a的数据类型b = input("输入一个数字:")print(b+4) # 报错(字符串不能与数字相加)运行.
2021-01-15 18:14:08
2250
原创 Fib数列问题
时间限制 2000ms 空间限制 65536KB 题目:Fib数列是这样的数列: 1,1,2,3,5,8,13,21,,,,,,. 你能确定它的第n项吗,假设它的第n项为N,你需要编程解决对于另一个输入数M,N % M的值.输入:本题只有一组测试数据!! 第一行有用空格隔开的两个整数T,M. (1 <= T,M <= 100000) 以下有T行数据,每...
2021-01-15 18:12:47
1331
原创 矩阵快速幂
(1)矩阵乘法简单的说矩阵就是二维数组,数存在里面,矩阵乘法的规则:A*B=C其中c[i][j]为A的第i行与B的第j列对应乘积的和,即:模板 :const int N=10;int tmp[N][N];void multi(int a[][N],int b[][N],int n){ memset(tmp,0,sizeof tmp); for(int i...
2021-01-15 18:12:27
150
原创 树的直径
树的直径定义:一棵树的直径就是这棵树上存在的最长路径。树的直径的求法与结论:两次dfs或bfs。第一次任意选一个点进行dfs(bfs)找到离它最远的点,此点就是最长路的一个端点,再以此点进行dfs(bfs),找到离它最远的点,此点就是最长路的另一个端点,于是就找到了树的直径。树的直径的证明:假设此树的最长路径是从s到t,我们选择的点为u。反证法:假设搜到的点是v。1、v在这条最长路径...
2021-01-15 18:12:05
1116
2
原创 邻接表
邻接表和邻接矩阵的选择问题:邻接表与邻接矩阵有相似的作用:用于储存一个图中所有的节点,但是邻接矩阵比较浪费内存,当数据较小时,邻接矩阵还可以计算,但是一旦数据较大,用邻接矩阵往往就会超时或者超内存,这时就要使用邻接表来存图了;为方便理解邻接矩阵与邻接表的储存方式。如下所示:给出几组数据。1 103 58 9我们将所给的点标记为1(红色),其余...
2021-01-15 18:11:37
1601
原创 并查集的最大集合与集合个数
并查集的最大集合:就是指输入所有关系后,分成了很多的不同集合,最大集合就是那些不同的集合种包含元素最多的集合所包含的元素的多少。集合个数:就是指输入所有关系后,这些不同集合有多少个。解决思路:就是在普通的并查集模板中加入一个记录数组num[],这个数组可以标记每个元素的权值的最大和和最大集合的元素个数。代码:#include<iostream>#include&...
2021-01-15 18:11:05
2189
原创 寻找字符串A中完全包含字符串B的最短子字符串
基本思路:已知两个字符串a和b。字符串a的字符有可能重复,字符串b中的字符不重复。编写一个算法,寻找字符串a的最短子字符串,使得该子字符串包含字符串b中的所有字符。这是一道典型的动态规划题,有点类似编程之美中最短摘要生成那道题目。可以使用两个指针t_rear和t_front遍历字符串a。使用两个指针rear和front记录已发现的最短字符串的边界。使用一个变量cnt记录已经发现...
2021-01-15 18:10:32
5939
原创 C#连接MySQL数据库
在使用C#写桌面应用程序时,常会用到C#与数据库的连接,本文测试C#与本地MySQL数据库建立连接(测试环境:WIndows10)。第一步:本地MySQL的安装与数据库图形界面软件HeidiSQL的安装。1)官网下载MySQL:https://www.mysql.com/cn/downloads/2)官网下载HeidiSQL:https://www.heidisql.com/3)在自己电脑的C盘建立stu文件夹,再在stu文件夹中建立app文件夹,将MySQL和HeidiSQL解压到app文
2021-01-09 16:13:15
2053
1
原创 WPF中引入外部资源
有时候需要在WPF中引入外部资源,比如图片、音频、视频等,所以这个常见的技能还是要GET到,下面是具体操作步骤:第一步:在VS中创建一个基于C#的WPF应用程序。第二步:从外部引入资源,这里以引入图片资源为例。1)在项目中新建Resources文件夹:右键点击项目选择添加,选择新建文件夹,重命名为Resources。2)将所需要的资源如图片(视频,音频)放在Resources文件夹下面:展开项目中的Properties,双击Resources.resx,选择图像(添加图片资源)。
2021-01-09 14:47:27
1386
1
原创 WPF中引入MaterialDesign外部控件库
在WPF中引入MaterialDesign外部控件库的步骤:第一步:找到VS顶部菜单栏中的项目里面的NuGet程序包,点击。第二步:点击浏览,然后搜索MaterialDesignThemes完成安装。第三步:在项目解决方案中,找到App.xaml文件并打开,输入如下代码:<Application.Resources> <ResourceDictionary> <ResourceDictionary.MergedD
2021-01-09 13:56:26
2828
2
原创 CUDA中的计时函数
一、clock函数计时在C和C++中有clock计时函数,由于CUDA是包含C的,所以在CUDA中我们也同样可以使用这个函数。clock函数的定义:clock函数测的是在程序中从程序开始到调用clock函数之间在CPU上所经过的时钟数(CLOCKS)。clock函数的介绍:在C与C++的头文件time.h与ctime中的库函数clock()可以测试函数运行时间1.clock()...
2019-01-26 17:55:36
1423
1
原创 CUDA安装成功后测试Sample的时候报错(问题解决)
在我们安装好了CUDA后,迫不及待的想试试CUDA自带的Sample。cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuerymakesudo ./deviceQuery之后出现以下的错误:$ ./deviceQuery./deviceQuery Starting... CUDA Device Query (Runtim...
2019-01-26 16:52:00
17269
9
原创 CUDA8.0安装成功后的环境配置问题
CUDA8.0安装成功后会出现以下画面:============ Summary ============Driver: Not SelectedToolkit: Installed in /usr/local/cuda-8.0Samples: Installed in /home/textminerPlease make sure that– PATH includes /u...
2019-01-26 16:30:19
4397
4
原创 Ubuntu下CUDA8.0安装错误之InstallUtils.pm
问题:Ubuntu18.04安装官网的CUDA8.0runfile文件出错打开报错内容中写明的log文件后发现以下提示:Can't locate InstallUtils.pm in @INC (you may need to install the InstalUtils module) (找不到InstallUtils.pm) 解决方法:log文件中,给出了几个目录的位置,...
2019-01-26 16:15:29
309
原创 Ubuntu用户权限管理
一、改变文件所有权(chown)sudo chown username myfile // 将myfile文件的所有权改为username的chown -R username /files/work // 加入-R,work后文件夹以及文件夹里的所有文件和子目录所有权都变为username二、改变文件的权限(chmod)sudo chmod 777 filename...
2019-01-25 16:56:01
1523
原创 Ubuntu下apt-get命令参数
Ubuntu下apt-get 命令参数:1. apt-cache search package 搜索包2. apt-cache show package 获取包的相关信息,如说明、大小、版本等3. sudo apt-get install package 安装包4. sudo apt-get install package - - reinstall 重新安装包5. sudo ...
2019-01-25 16:13:05
241
原创 Ubuntu进入文件夹路径及查看文件夹目录
在Ubuntu中,我们进入了一个文件夹,如何看这个文件夹此时的路径呢?通过Ctrl + L 可以看到路径,然后Ctrl + C复制路径 再通过命令行中cd 路径 进入刚刚的文件夹 如何查看这个文件夹的目录呢?有两种方法:1. 通过ls进行操作ls / // 查看根目录ls 路径 ...
2019-01-25 15:57:16
50707
原创 Ubuntu关于文件及文件夹的一些基本操作
进入文件夹操作:当前位置 cd .上一级文件位置 cd ..返回上一步操作 cd -进入Home文件 cd ~显示文件路径 pwd 文件及文件夹操作:创建文件 touch <file>创建文件夹 mkdir <dir>创建多重文件夹 mkdir -p <dir>mkdir A/...
2019-01-25 15:41:49
890
原创 Ubuntu修改系统默认启动级别
图形界面与终端控制台的交互:Ctrl + Alt + Fnn=1 进入登陆界面n=2 进入图形界面n=3 进入终端控制台设置开机启动为图形界面或者终端控制台:sudo systemctl set-default multi-user.target sudo reboot // 重启后进入终端控制台出现下图:然后如果只是想暂时开启一次图形界面的话:...
2019-01-25 15:08:12
1081
原创 解决Ubuntu虚拟终出现菱形乱码问题
安装Ubuntu的时候,我们默认选择中文,在虚拟终端就会出现很多菱形乱码,我们可以通过下面方法进行解决。这里需要注意一点:在虚拟终端中,输入密码是看不见的,也就是你看起来不能输入任何东西,但是其实它已经把你键盘敲的密码录入了,而且你输入的密码中数字是不能在小键盘上面输入的,只能在26键上面的数字进行输入。进入正题:sudo gedit /etc/default/locale将...
2019-01-25 14:52:12
5190
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人