使用JupyterLab写C++

简介: 使用JupyterLab写C++

使用JupyterLab写C++


前言


这篇博客纯粹就是为了好玩,平时大家都习惯使用jupyter写一些python代码特别是对于一些数据分析处理的问题,可以随时查看运行结果非常方便.如果是C++代码那就得每次链接编译再运行查看结果,对于一些小的数据容器这样操作非常不方便.正好看到有一个开源的库可以让我们在jupyter环境中就能运行C++代码,并且可以随时查看数据内容,所以来记载一下.


开始动手


首先查看一下这个库的内容github.com/jupyter-xeu…


image.png


目前这个库只支持linuxMac系统,并且没有推出对Win的支持.所以Win想体验的话可以开个虚拟机或者用服务器.这个库主要就是一个用于C++的jupyter内核,基于C++解释器和jupyter协议实现.


安装


默认是配置好了anaconda环境的基础上进行下面的步骤

  1. 创建一个新的虚拟环境

conda create -n xxx

  1. 激活新的虚拟环境并且安装配置

conda activate xxx

conda install jupyterlab

conda install xeus-cling -c conda-forge

  1. 查看内核是否安装好

jupyter kernelspec list


image.png


测试一下


随便打开一个文件夹,然后和python一样命令行运行jupyter lab

创建一个C++17的ipynb,然后写一些C++的代码进行测试

首先必须要引入头文件


#include<iostream>
#include<map>
#include<vector>
using namespace std;
复制代码


运行这个代码


image.png


然后随便编写一些容器并查看内部数据


map<string, int> mp{
    {"one",   1},
    {"two",   2},
    {"three", 3},
    {"four",  4}
};
vector<int> mylist{
    1,3,5,7,9
};
复制代码


image.png

完美,这不就是我们想要的即时查看数据内容嘛,真香!!!并且遇到某些接口不会使用的时候还可以很简单的查看文档接口介绍


image.png


调用外部库(opencv)


图像处理最常用的opencv也可以在这里面调用,需要额外自己手动引入includelib


#pragma cling add_library_path("/usr/local/lib")
#pragma cling add_include_path("/usr/local/include/")
#pragma cling add_include_path("/usr/local/include/opencv4")
#pragma cling load("/usr/local/lib/libopencv_world.so.4.5.3")
#include<opencv2/opencv.hpp>
#include<opencv2/highgui.hpp>
#include<iostream>
using namespace std;
using namespace cv;
Mat img=imread("/home/shelgi/Desktop/C++_opencv/1.jpeg");
imshow("src",img);
waitKey(0);
cout<<img.rows<<" "<<img.cols;
复制代码


image.png


结束


总的来看使用jupyter写C++代码可玩性还是可以的,但是项目开发就很难用的上.所以这个也只是一个玩具尝试.如果试试就会发现,这玩意居然不支持cin,并且貌似没有给出解决方案只能找其他方法代替.

目录
相关文章
|
2月前
|
前端开发 数据安全/隐私保护
股票交易截图生成器, 股票持仓图生成器免费, 股票交割单生成器手机版
实现了完整的股票持仓截图生成功能,包含随机数据生成、表格绘制、汇总统计和水印添加。使用时只
|
Python
Python3.X使用tkinter报错,完美解决~(Python GUI)No matching distribution found for tkinter
Python3.X使用tkinter报错,完美解决~(Python GUI)No matching distribution found for tkinter
2583 0
Python3.X使用tkinter报错,完美解决~(Python GUI)No matching distribution found for tkinter
|
9月前
|
人工智能 PyTorch 算法框架/工具
【AI系统】动手实现 PyTorch 微分
本文介绍了使用操作符重载(OO)编程方式实现的自动微分,特别是采用反向模式(Reverse Mode)的实现方法。文中详细解释了操作符重载的基本概念及其在自动微分中的应用,以及反向模式的工作原理。通过 Python 示例代码,演示了如何手动实现类似 PyTorch 中自动微分的核心机制,包括定义 `Variable` 类、`Tape` 结构以及实现基本的数学运算符重载。最后,通过一个具体的数学函数示例展示了如何利用上述机制计算梯度,帮助读者理解反向模式自动微分的全过程。
192 1
【AI系统】动手实现 PyTorch 微分
|
9月前
|
机器学习/深度学习 并行计算 测试技术
每天五分钟深度学习:解决for循环效率慢的关键在于向量化
通过本文的介绍,希望读者能够理解向量化的基本概念、优势及其在实际应用中的重要性,并能够在日常的深度学习工作中灵活应用向量化技术,从而提升工作效率和代码性能。
393 13
|
Linux 数据处理
Linux命令`install`详解:不仅仅是安装工具
`install`命令在Linux中并非仅用于安装软件,而是用于精确复制文件和目录,设置权限及所有权。它能创建目标目录、处理符号链接并保留时间戳。例如,`install -m 644 source.txt /dest`用于复制文件并设置权限,`install -d -m 755 /dest/dir`创建目录。使用时要注意权限设置,避免误操作,并记录命令以备恢复。
|
开发工具 git
git error 已解决【Another git process seems to be running in this repository, e.g. an editor opened by】
git error 已解决【Another git process seems to be running in this repository, e.g. an editor opened by】
276 2
|
缓存 Linux 数据安全/隐私保护
搭建c++ python jupyter lab 在线环境
搭建c++ python jupyter lab 在线环境
293 0
|
前端开发 JavaScript
HTML 转 Markdown 如此简单
本文推荐 HTML 转为 markdown 的工具和实现方式,并找到了一个快捷技巧,收藏等于学会。
2062 1
|
机器学习/深度学习 算法 数据挖掘
逻辑回归的原理、Python的实现方式
逻辑回归的原理、Python的实现方式
452 0
|
弹性计算
阿里云轻量应用服务器价格多少钱,2024年阿里云轻量应用服务器价格表整理
阿里云轻量应用服务器的价格根据配置和促销活动的不同而有所变化。在2024年,阿里云轻量应用服务器的价格范围较广,从61元一年起,到165元一年不等。具体的价格取决于服务器的配置,如CPU核数、内存大小、带宽等。 例如,阿里云轻量应用服务器的2核2G3M配置的价格为61元一年,而2核4G4M带宽的价格为165元一年。此外,阿里云还提供了其他配置选择,如4核8G8M带宽、8核16G10M带宽等,价格分别为322元一年和483元一年。
600 0

热门文章

最新文章