18 Linux之Python定制篇-Python开发平台Ubuntu

18 Linux之Python定制篇-Python开发平台Ubuntu

文章目录

  • 18 Linux之Python定制篇-Python开发平台Ubuntu
    • 18.1 安装Ubuntu虚拟机
    • 18.4 Ubuntu的root用户
    • 18.5 Ubuntu下开发Python

  • 学习视频来自于B站【小白入门 通俗易懂】2021韩顺平 一周学会Linux。
  • 可能会用到的资料有如下所示,下载链接见文末:
  1. 《鸟哥的Linux私房菜 基础学习篇 第四版》1
  2. 《鸟哥的Linux私房菜 服务器架设篇 第三版》2
  3. 《韩顺平_2021图解Linux全面升级》3

18.1 安装Ubuntu虚拟机

  在之前“Linux入门”一章中提到,Linux有各种各样的发行版,其中一个应用最广泛的发行版之一就是Ubuntu。Ubuntu是一个以桌面应用为主的开源GNU/Linux操作系统,支持x86、amd64 (即x64)和ppc架构,由全球化的专业开发团队(Canonical Ltd)打造。因为专业的Python开发者一般会选择Ubuntu这款Linux系统作为生产平台,并且Ubuntu的桌面非常漂亮,所以我们要学习如何使用Ubuntu平台。Ubuntu和CentOS都是基于GNU/Linux内核的,因此基本使用和Centos是几乎一样的,它们的各种指令可以通用,同学们在学习和使用Ubuntu的过程中,会发现各种操作指令在前面学习CentOS都使用过。只是界面和预安装的软件有所差别。

  Ubuntu的安装要比CentOS简单很多,为节省篇幅,具体安装过程可以查看我的CSDN博文“辅助笔记-安装Ubantu20.04.1虚拟机”,这里就不再赘述。

18.4 Ubuntu的root用户

  安装ubuntu成功后,默认情况下时无法登root用户的,都是普通用户权限,并没有最高root权限。如果需要使用root权限时(比如切换系统镜像源),有下面两种方法:

  1. 方法一【最常用】:在命令前面加上sudo。但有时候会一直进行root权限操作,每条指令都加上sudo会感觉很麻烦。
  2. 方法二:首先设置root用户密码,然后在终端使用su命令直接切换到root用户。

下面来一次演示这两种方法。

方法一:在命令前面加上sudo
下面直接给出终端的演示实例(在Ubuntu桌面右键选择“终端”):

# 直接查看磁盘使用情况,权限不够
lyl@ubuntu:~/桌面$ fdisk -l
fdisk: 打不开 /dev/loop0: 权限不够
fdisk: 打不开 /dev/loop1: 权限不够
fdisk: 打不开 /dev/loop2: 权限不够
fdisk: 打不开 /dev/loop3: 权限不够
fdisk: 打不开 /dev/loop4: 权限不够
fdisk: 打不开 /dev/loop5: 权限不够
fdisk: 打不开 /dev/loop6: 权限不够
fdisk: 打不开 /dev/loop7: 权限不够
fdisk: 打不开 /dev/sda: 权限不够
fdisk: 打不开 /dev/loop10: 权限不够
fdisk: 打不开 /dev/loop9: 权限不够
fdisk: 打不开 /dev/loop8: 权限不够
fdisk: 打不开 /dev/loop11: 权限不够# 在指令前加上sudo即可查看
lyl@ubuntu:~/桌面$ sudo fdisk -l
[sudo] lyl 的密码: 
Disk /dev/loop0:4 KiB,4096 字节,8 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
# 关于磁盘的更多内容略

方法二:使用su命令直接切换到root用户

  我们一般使用su命令来直接切换到root用户的,但是如果没有给root设置初始密码,就会抛出su : Authentication failure这样的问题。所以,我们需要首先给root用户设置一个初始密码:

# 1. 设定root用户密码
sudo passwd
# 2. 切换成root用户
su root
# 3. 退出root并返回一般用户
exit

下面是终端演示实例:

lyl@ubuntu:~/桌面$ sudo passwd      # 1. 设定root用户密码
[sudo] lyl 的密码: 
新的 密码: 
重新输入新的 密码: 
passwd:已成功更新密码lyl@ubuntu:~/桌面$ su root          # 2. 切换成root用户
密码: root@ubuntu:/home/lyl/桌面# fdisk -l
Disk /dev/loop0:4 KiB,4096 字节,8 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
# 关于磁盘的更多内容略
# 可以看到,已经切换到root用户,可以直接使用root权限指令了。
root@ubuntu:/home/lyl/桌面# exit    # 3. 退出root并返回一般用户
exit
lyl@ubuntu:~/桌面$ 

【细节】终端的提示符:提示符$代表一般用户,提示符#代表root用户

18.5 Ubuntu下开发Python

  之前提到,专业的Python开发者会选择Ubuntu作为开发平台。所以当Ubuntu安装好后,默认就已经安装好了Python的开发环境。可以使用python3来查看当前安装的python版本:

lyl@ubuntu:~/桌面$ python3
Python 3.8.2 (default, Jul 16 2020, 14:00:26) 
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> quit()

下面展示一个应用案例:
【案例1】在Ubuntu下开发一个Python的“Hello,Python!”程序。

lyl@ubuntu:~/桌面$ vi hello.py          # 1. 编写hello.py
###############################
# vi编辑器输入i进入编辑模式,可以复制下面的代码,也可以自己敲:
# 注意:vi新手先不要使用方向键、backspace等,自己敲一定要逐个字符敲对!
print("hello,python!")
###############################
lyl@ubuntu:~/桌面$ python3 hello.py     # 2. 运行hello.py
hello,python!

注:Ubuntu预装的是vim tiny版本,默认情况下vi输入方向键会变成ABCD,解决方法可以参考“ubuntu下vi输入方向键会变成ABCD的解决方法”。后面会安装Vim编辑器,所以这个案例可以先将就一下。


  1. 《鸟哥的Linux私房菜 基础学习篇 第四版》 ↩︎

  2. 《鸟哥的Linux私房菜 服务器架设篇 第三版》 ↩︎

  3. 《韩顺平_2021图解Linux全面升级》 ↩︎

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

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

相关文章

使用iOS应用程序进行数据采集:从入门到实践

随着移动互联网的普及,越来越多的数据产生于移动设备。为了更好地了解用户行为、优化产品体验,我们需要在iOS应用程序中进行数据采集。本文将指导您如何在iOS应用中实现数据采集,从基本概念到实际操作。 数据采集的基本概念与方法 a. 数据采集…

docker内部ip与内网其它ip网段冲突导致无法访问的解决方法

现象: 宿主机和docker内部能互相访问非常正常,但docker内部访问外部网络内网其中一个网段172.18.0.x则无法访问。 排查 由于docker是精简过的系统,需另外安装网络相关命令 首先更新apt-get,否则在apt-get install 命令时会报E:…

剑指 Offer 10- I. 斐波那契数列

剑指 Offer 10- I. 斐波那契数列 方法一 class Solution {int mod (int) 1e9 7;public int fib(int n) {if(n < 1) return n;int[] dp new int[n 1];dp[1] 1;for(int i 2; i < n; i){dp[i] (dp[i - 1] dp[i - 2]) % mod;}return dp[n];} }方法二 对方法一进行…

景区洗手间生活污水处理设备厂家电话

诸城市鑫淼环保小编带大家了解一下景区洗手间生活污水处理设备厂家电话 MBR生活污水处理设备构造介绍&#xff1a; mbr一体化污水处理的设计主要是对生活污水和相类似的工业有机污水的处理&#xff0c;其主要处理手段是采用目前较为成熟的生化处理技术接触氧化法&#xff0c;水…

el-table滚动加载、懒加载(自定义指令)

我们在实际工作中会遇到这样的问题&#xff1a; 应客户要求&#xff0c;某一个列表不允许分页。但是不分页的话&#xff0c;如果遇到大量的数据加载&#xff0c;不但后端响应速度变慢&#xff0c;前端的渲染效率也会降低&#xff0c;页面出现明显的卡顿。 那如何解决这个问题…

基础算法-递推算法-学习

现象&#xff1a; 基础算法-递推算法-学习 方法&#xff1a; 这就是一种递推的算法思想。递推思想的核心就是从已知条件出发&#xff0c;逐步推算出问题的解 最常见案例&#xff1a; 一&#xff1a;正向递推案例&#xff1a; 弹力球回弹问题&#xff1a; * 弹力球从100米高…

OpenLayers7官方文档翻译,OpenLayers7中文文档,OpenLayers快速入门

快速入门 这个入门文档向您展示如何放一张地图在web网页上。 开发设置使用 NodeJS&#xff08;至少需要Nodejs 14 或更高版本&#xff09;&#xff0c;并要求安装 git。 设置新项目 开始使用OpenLayers构建项目的最简单方法是运行&#xff1a;npm create ol-app npm create…

在ubuntu下远程链接仓库gitte/github

后期适当加点图片&#xff0c;提高可读性。 本教程是最基础的连接教程&#xff0c;设计git的操作也仅仅局限于push/pull&#xff0c;如果想全面了解&#xff0c;可以参考廖雪峰git教程 在Ubuntu上初始化本地Git仓库并链接到远程Gitee仓库(github同理)&#xff0c;需要按照以下步…

Go 面向对象(匿名字段)

概述 严格意义上说&#xff0c;GO语言中没有类(class)的概念,但是我们可以将结构体比作为类&#xff0c;因为在结构体中可以添加属性&#xff08;成员&#xff09;&#xff0c;方法&#xff08;函数&#xff09;。 面向对象编程的好处比较多&#xff0c;我们先来说一下“继承…

音视频 ffmpeg命令提取PCM数据

提取PCM ffmpeg -i buweishui.mp3 -ar 48000 -ac 2 -f s16le 48000_2_s16le ffmpeg -i buweishui.mp3 -ar 48000 -ac 2 -sample_fmt s16 out_s16.wav ffmpeg -i buweishui.mp3 -ar 48000 -ac 2 -codec:a pcm_s16le out2_s16le.wav ffmpeg -i buweishui.mp3 -ar 48000 -ac 2 -f…

QWidget的ui界面绘制成图片

文章目录 源文件源码解释效果修复图片清晰度 源文件 #include "widget.h" #include "ui_widget.h"#include <QPixmap> #include <QDir>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);// 构造…

Pinely Round 2 (Div. 1 + Div. 2) G. Swaps(组合计数)

题目 给定一个长度为n(n<1e6)的序列&#xff0c;第i个数ai(1<ai<n)&#xff0c; 操作&#xff1a;你可以将当前i位置的数和a[i]位置的数交换 交换可以操作任意次&#xff0c;求所有本质不同的数组的数量&#xff0c;答案对1e97取模 思路来源 力扣群 潼神 心得 感…

Android之布局转圆角

Android之布局转圆角 文章目录 Android之布局转圆角说明一、效果图二、实现步骤1.自定义RoundRelativeLayout2.使用 总结 说明 很多需求比较无语&#xff0c;需要某个布局转圆角&#xff0c;像个显眼包一样&#xff0c;所以为了满足显眼包&#xff0c;必须整呐提示&#xff1a…

Java智慧工地信息化管理平台源码,依托计算机信息、网络通讯、物联网、系统集成及云计算技术建立

Java智慧工地源码 智慧工地APP源码 系统定义&#xff1a; 智慧工地信息化管理平台是依托计算机信息、网络通讯、物联网、系统集成及云计算技术&#xff0c;通过数据采集、信息动态交互、智能分析&#xff0c;建立起来的一套集成的项目建设综合管理系统。实现项目管理信息化、网…

LeetCode 剑指offer 09.用两个栈实现队列

LeetCode 剑指offer 09.用两个栈实现队列 题目描述 用两个栈实现一个队列。队列的声明如下&#xff0c;请实现它的两个函数 appendTail 和 deleteHead &#xff0c;分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素&#xff0c;deleteHead 操作返回…

消息队列-------Rabbitmq介绍和安装

1.消息队列介绍 消息队列就是基础数据结构中的“先进先出”的一种数据机构。想一下&#xff0c;生活中买东西&#xff0c;需要排队&#xff0c;先排的人先买消费&#xff0c;就是典型的“先进先出” 2.消息队列MQ可以解决的问题 MQ是一直存在&#xff0c;不过随着微服务架构…

C语言网络编程实现组播(多播)

1、组播IP划分 224.0.0.0&#xff5e;224.0.0.255 为预留的组播地址&#xff08;永久组地址&#xff09;&#xff0c;地址224.0.0.0保留不做分配&#xff0c;其它地址供路由协议使用&#xff1b; 224.0.1.0&#xff5e;224.0.1.255 是公用组播地址&#xff0c;可以用于Inter…

Scala的特质trait与java的interface接口的区别,以及Scala特质的自身类型和依赖注入

1. Scala的特质trait与java接口的区别 Scala中的特质&#xff08;trait&#xff09;和Java中的接口&#xff08;interface&#xff09;在概念和使用上有一些区别&#xff1a; 默认实现&#xff1a;在Java中&#xff0c;接口只能定义方法的签名&#xff0c;而没有默认实现。而在…

机器连接和边缘计算

以一种高效、可扩展的方式进行连接和边缘计算的结合&#xff0c;解决了在工业物联网应用中的机器数据集成问题。 一 边缘计算 边缘计算描述了由中央平台管理的数据分散式处理&#xff0c;它对于工业物联网而言非常重要。在许多应用程序中&#xff0c;由于数据量非常大&#xf…

【USRP】集成化仪器系列1 :信号源,基于labview实现

USRP 信号源 1、设备IP地址&#xff1a;默认为192.168.10.2&#xff0c;请勿 修改&#xff0c;运行阶段无法修改。 2、天线输出端口是TX1&#xff0c;请勿修改。 3、通道&#xff1a;0 对应RF A、1 对应 RF B&#xff0c;运行 阶段无法修改。 4、中心频率&#xff1a;当需要…