【Linux】win 环境下进行 linux开发

news2024/9/30 23:36:49

文章目录

    • IDE 安装
    • Python开发
      • 创建一个新项目
      • 安装 Python、pip 和 venv
      • 创建虚拟环境(建议)
      • 运行Python
    • 参考文章

想要win 环境下进行 linux开发,需要依赖于wsl。wsl安装可参考上篇文章 【Linux】wsl win安装Linux环境
这里主要介绍在 linux下进行 pythonC++开发

IDE 安装

选择VS Code进行开发

  1. 下载VS Code,百度搜索即可
  2. 打开VS Code左侧扩展,搜索wsl下载第一个即可
    在这里插入图片描述
    在这里插入图片描述

Python开发

创建一个新项目

  1. 打开之前安装的 Ubuntu,跳出命令行
  2. Ubuntu 命令行中, 导航到要在其中放置项目的位置, 并为其创建目录: mkdir try
  3. cd try为进入 try文件夹
  4. 输入code .会自动使用VS Code打开try文件夹

安装 Python、pip 和 venv

Ubuntu 18.04 LTS 自带 Python 3.6.x
需要安装以下两个工具:
pip (用于 Python 的标准包管理器) ,以及venv(用于创建和管理轻型虚拟环境的标准模块,可以保证一个项目一个环境,相互之间互不干扰)
安装:

  1. 打开 Ubuntu 终端并输入:python3 --version, 这将会返回python版本号,确认已安装python
  2. 安装 pip : sudo apt install python3-pip,输入之后,再次选择Y即可
    1. pip3 --version查看pip版本
    2. pip3 list查看安装了那些包
  3. 安装 venv :sudo apt install python3-venv
    安装pip时发生错误:

root@DESKTOP-3NPR2Q5:~# sudo apt install python3-pip
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package python3-pip

可能时没有更细软件源,使用如下命令更新即可
sudo apt-get update

创建虚拟环境(建议)

对于 Python 开发项目, 建议使用虚拟环境。 通过创建虚拟环境, 你可以将项目与工具隔分开, 避免与其他项目的工具存在版本冲突。例如, 你需要维护一个 Django 1.2 web 框架的旧 web 项目,但你新的工程被要求使用 Django 2.2
为了防止版本控制冲突,虚拟环境允许在没有管理权限的情况下安装和管理包。
即,在不同虚拟环境中,它们所使用的的项目版本可以是不同的。如果不创建虚拟环境,那么你所有的项目都会是一个版本,对于旧版本项目来说可能会有不可预知的问题。

  1. 打开终端, 在try项目文件夹中用以下命令创建虚拟环境 。python3 -m venv .venv.venv为虚拟环境名称,可变更)。
  2. 激活虚拟环境:source .venv/bin/activate,如果它有效, 你将会命令提示符之前看到 (. venv)

PS:按 Ctrl + ’ (反撇号字符,即ESC下面的按键),会显示终端,即 Linux 命令行

在这里插入图片描述

运行Python

  1. 安装Python扩展
  2. 运行程序
    在这里插入图片描述

参考文章

  1. Get started using Python for web development on Windows
  2. 利用 Windows 子系统 Linux(WSL)开发 Python 环境搭建

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1979810.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【pkill pgrep】Centos/Linux pkill命令详细介绍

简介 系统版本:Centos7.6 pkill命令用于杀死一个进程,会根据进程名称和其他属性杀死进程(默认会向进程发送SIGTERM信号,详细请看Linux信号的行为说明),与之相似的命令有killall,与kill命令相比&…

C++学习之路(1)— 第一个HelloWorld程序

C学习之路(1)— 第一个HelloWorld程序 一、前言 C在C语言的基础上添加了对面向对象编程和泛型编程的支持,在 20世纪90年代便是最重要的编程语言之一,并在21世纪仍保持强劲势头。C继承了C语言高效、简洁、快速和可移植性的传统。 …

鸿蒙HarmonyOS开发:常用布局及实用技巧

文章目录 一、概述二、盒子模型三、线性布局(Column/Row)1、space属性2、justifyContent属性3、alignItems属性 四、实用技巧1、Blank组件的使用2、layoutWeight属性的使用 一、概述 布局是指对页面组件进行排列和定位的过程,其目的是有效地…

【STM32】“stm32f10x.h” 头文件的作用

目录 1. 文件结构与头文件保护1.1 头文件保护1.2 包含的头文件 2. 宏定义和常量2.1 系统时钟相关2.2 外设时钟使能2.3 中断优先级 3. 外设寄存器结构体3.1 GPIO 寄存器结构体3.2 RCC 寄存器结构体3.3 USART 寄存器结构体 4. 外设头文件的引入4.1 GPIO 外设头文件4.2 RCC 外设头…

CMU15445 (Fall 2023) Project 3 - Query Execution 思路分享

文章目录 写在前面Task 0 - Read the Source Code算子(executor)如何获取数据,BusTub如何描述算子?ButTub如何存储表的数据,描述表的结构? Task 1 - Access Method ExecutorsSeqScanInsertUpdateDeleteIndexScanOptimizing SeqSca…

Tensorflow训练视觉模型(CPU)

目录 零、模型下载 一、清理C盘 二、 配置环境 三、运行项目前提操作 (1)根据自己的项目设置路径。每次激活虚拟环境(tensorflow115)都得重设一次 (2)执行setup 这个项目的路径移动了位置也需要重设一…

7.17题目练习

目录 1.二叉树的最近公共祖先 2.从前序与中序遍历序列构造二叉树 3.最小k个数 1.二叉树的最近公共祖先 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode(int x) { val x; }* }*/ class Solution …

余承东再次否认“遥遥领先”禁令:没有罚款一说,被喊烂了

7月29日,问界第四十万台新车在赛力斯超级工厂正式下线。在下线仪式上,华为常务董事、终端BG董事长、智能汽车解决方案BU董事长余承东再次否认了外界关于其被禁提“遥遥领先”一次的传闻,在谈及问界M9时,他表示,问界M9不…

java基础 之 equals和==的区别

文章目录 浅谈“”特点比较基本类型比较引用类型 浅谈“equals”背景和使用重写equals自定义类为什么需要重写equals方法 总结附录代码及文章推荐 前言: 1、8大基本数据类型,它们的值直接代表了某种数据,不是对象的实例,不能使用n…

DeepSpeed基础及内存优化特性

DeepSpeed 1.基础概念 DeepSpeed是一个由Microsoft 公司开发的开源深度学习优化库,旨在提高大规模模型训练的效率和可扩展性,使研究人员和工程师能够更快地迭代和探索新的深度学习模型和算法。它采用了多种技术手段来加速训练,包括模型并行…

【百度面试算法题】2024-08-02

部门项目实际上也涉及到多种语言,有没有意愿去学习其他语言?你是如何利用数据结构来做技术的/项目中是如何解决高并发的?(没听懂问题…就直接开始介绍项目了…后来被打断说不进行发散了,开始问八股)说一下单…

Visual Studio中gets报错解决方法

1、报错内容 2、visual studio 2015之后就不支持gets了,变成了gets_s,并且后面的括号中也不能单独写一个数组名,还需加上数组内的个数,如下: 问题就解决了

虚拟机如何使用pxe服务实现自动安装系统

一、前提 服务机为rhel7.9 因为我们需要虚拟机为服务器来给要安装系统的虚拟机分配IP 所以要先将VMWare的NAT模式的DHCP自动分配取消,如图: yum install httpd -y systemctl enable --now httpd 二、基于HTTP协议的PXE服务器 1、首先需要进入图形化…

2-55 基于matlab的 永磁同步电机滑膜观测器估算电机转速

基于matlab的 永磁同步电机滑膜观测器估算电机转速。精度比传统观测器精度高。分别输出电机转速估计值与实际值、电机转速估计误差、电机转子位置估计值与实际值、电机转子位置估计误差。程序已调通,可直接运行。 2-55滑膜观测器估算电机转速 - 小红书 (xiaohongsh…

正点原子imx6ull-mini-Linux驱动之Linux SPI 驱动实验(22)

跟上一章一样,其实这些设备驱动,无非就是传感器对应寄存器的读写。而这个读写是建立在各种通信协议上的,比如上一章的i2c,我们做了什么呢,就是把设备注册成一个i2c平台驱动,这个i2c驱动怎么搞的呢&#xff…

PXE:Kickstart自动化安装Linux系统

PXE:工作在 Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。 运行 PXE协议需要设置:DHCP服务器和TFTP服务器。DHCP服务器用来给 PXE client(将要安装系统的主机&…

在使用JSON过程中遇到的一个空间释放问题

在对完成的模块进行空间访问检查中发现了这个问题,这刚开始接触JSON的使用,也不知道他的内部实现,因此该问题找了好久,终于发现是每个节点创建都会自动开辟空间,因此造成空间未成功释放的错误。 JSON未成功替换节点空间…

NVIDIA A100 和 H100 硬件架构学习

目前位置NV各种架构代号: NVIDIA GPU 有多个代号和架构,这些架构对应不同的世代和硬件特性。以下是 NVIDIA 主要 GPU 架构及其计算能力(Compute Capability)代号的简要概述: Tesla 架构 G80、GT200 Compute Capabi…

未授权访问漏洞(漏洞复现合集)

目录 一:Redis未授权访问漏洞 * 步骤一:进入vulhub目录使用以下命令启动靶机... 步骤二:在Kali上安装redis程序进行服务的链接 步骤三:可以直接连接执行命令且不需要认证说明存在未授权访问漏洞...下载以下攻击项目... 步骤四:使用工具执行以下命令获取目标的命…

LeetCode.572.另一棵树的子树

题目描述: 给你两棵二叉树 root 和 subRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在,返回 true ;否则,返回 false 。 二叉树 tree 的一棵子树包括 tree 的某个节点和这个节点的所有后代节点。…