Python_day11--day14

本文介绍了在Linux系统中设置Python3.6环境,包括添加PPA源、安装、调整优先级,以及详细讲解了Linux与Windows的区别、目录含义、常用命令、权限结构、文件操作、查找命令、挂载操作以及Python的内置函数、数学模块和随机模块等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学业繁忙,资源整理

linux:

#(1)保证网络正常连接
# sudo add-apt-repository ppa:jonathonf/python-3.6(服务器403状态,先废弃)
sudo add-apt-repository ppa:deadsnakes/ppa 
sudo apt-get update            (更新软件列表,拿取最新资源)
sudo apt-get install python3.6 (安装python3.6版本)

#(2)调整Python3的优先级,使得3.6优先级较高)
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 1
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 2

#(3)验证结果: 右键打开终端 -> 输入python3 ->如果出现如下3.6.7版本的提示,证明安装成功,exit()退出
    Python 3.6.12 (default, Aug 18 2020, 02:08:22) 
    [GCC 5.4.0 20160609] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 
```
### linux 跟 windows 的区别         
```
(1)目录的结构
(2)文件格式
	windows 操作系统内核是NT,而linux 是 shell;
	windows 主要文件系统是fat32或NTFS,
	而linux 主要文件系统是Ext2,Ext3
(3)安全性
```
### 目录含义
```
/bin   存放普通用户的命令文件
/boot  存放系统启动文件
/cdrom 存放读取光盘的相关文件
/dev   设备文件 
/etc   配置文件
/home  家目录
/lib   库文件
/lib64 64位库文件
/lost+found 系统异常产生错误时,丢失文件放在这
/media 媒体文件
/mnt   挂载目录
/opt   安装软件时的默认目录
/proc  内存中相关数据文件
/root  root用户登录的家目录
/run   系统运行时候 用到的文件
/sbin  超级管理员运行的文件
/srv   服务启动之后需要访问的数据目录,
/sys   系统文件 
/tmp   临时文件
/usr   应用程序存放目录
/var   放置系统执行过程中经常变化的文件,如随时更改的日志文件 

linux  系统当中 一切皆文件
(常用的比如:普通文件,目录文件,链接文件,设备文件等)
```
### 相关命令
```
相对路径:
.  	  相对于当前路径
.. 	  相对于上一级路径
绝对路径:
以/开头的就是绝对路径

cd .. 回到上一级
cd    切换目录 /home/wangwen
cd ~  切换到家目录
cd -  回到上一个你操作的那一个目录
pwd 看一眼 你当前所在的目录是哪里
ls  看一眼 你这个文件夹里面有什么
.bash_history  但凡是点开头的文件 都是隐藏文件

-a all   所有文件(包括隐藏文件)
-l list  以列表的形式呈现
-h 可以让文件大小带上单位
ll 相当于 ls -al
man是帮助命令 比如:man ls 或 man cp

mkdir 文件夹名称
touch 创建文件
ln -s 创建连接  (ln -s 指定你想要创建的连接  放到哪个目录下面)
ln -s 需要使用绝对路径的方式来创建 
ifconfig 查看linux下面的ip
ln => link s => soft
```

### 权限结构
```
指定类型(dl-) 权限位1(rwx) 权限位2(rwx) 权限位3(rwx)   r=>read w=>write x=>可执行
d表示文件夹  directory的缩写
l表示链接    link的缩写
-表示文件
d rwx rwx r-x
------ 文件类型-所属主  所属组  其他
  	     d     rwx     rwx    rwx

位数1,2,3 代表当前文件或者文件夹的所有者的权限设定:(所有者的权限  u,user)
		1: r 或者 -  r表示可以读取  - 表示不可以读取
		2: w 或者 -  w表示可以写入  - 表示不可以写入
		3: x 或者 -  x表示可以执行  - 表示不可以执行

位数4,5,6 代表当前文件或者文件夹的所属组的权限设定:(所属组的权限 g ,group)
		1: r 或者 -  r表示可以读取  - 表示不可以读取
		2: w 或者 -  w表示可以写入  - 表示不可以写入
		3: x 或者 -  x表示可以执行  - 表示不可以执行

位数7,8,9 代表其他用户对当前文件或者文件夹的的权限设定:(其他人的权限 o,other)
		1: r 或者 -  r表示可以读取  - 表示不可以读取
		2: w 或者 -  w表示可以写入  - 表示不可以写入
		3: x 或者 -  x表示可以执行  - 表示不可以执行
```

### 更改权限

```
r  => 4
w  => 2
x  => 1

rwx    => 7
rw-    => 6
r-x    => 5
r--    => 4
-wx    => 3
-w-    => 2
--x    => 1
---    => 0
=>rwx的任意组合共 8 种 情况

755 (根目录下默认的文件夹权限)
rwx  r-x  r-x
644 (根目录下默认的文件权限)
rw-  r--  r--
777 (所有权限)
rwx  rwx  rwx

=>关于权限更改
chmod 755  1.txt
递归更改这个文件夹里面的所有文件权限
chmod -R 777 ceshi100 (chmod -R 777 文件夹)
 
u代表所有者   加一个r权限 (user)
g代表所属组   减一个w权限 (group)
o代表其他	 加一个执行权限 (other)
chmod u+r,g-w,o+x 1.txt

其他写法:
chmod u=rwx 1.txt

=>对于目录来讲  
r   是否呈现里面的文件
w   是否可以在里面创建文件或文件夹
x   cd 切不进来  不能访问这个目录

=>对于文件来讲
r  可以看到文件内容
w  可以更改删除文件及内容
x  是否可以执行这个文件 ./abc.sh (shell) 


(*扩展)
*sudo useradd a01  添加用户
*sudo passwd a01   给用户添加密码
*sudo su a01       切换用户
*exit  	           退出当前用户  
sudo userdel a01   删除用户a01

```
```
mv  /路径/文件夹或文件 (新名称)  功能:既可以剪切  也可以改名(move)
cp  路径  路径(从哪里 ~ 哪里去)
cp  默认 只能够复制文件
cp -r   可以复制文件夹
cp -a   可以复制权限和所有属性 
rm -rf  指定文件夹或者文件名称     用于删除文件或者目录

nano 内置自带的编辑器 编辑文件用的	
cat  查看文件内容
more 对于内容比较多的情况用more 支持分页 空格下一页
head 加上-2 是查看前几条
tail 加上-2 是查看后几条
*vim => sudo apt-get install vim 
```
### 查找命令
```
1 find	 搜索命令	  #找文件		
	
	按照文件名查找
	find  查找位置   -name  文件名
	find  /  -name  index.php		按照文件名查找
			-iname			       按照文件名查找,不区分大小写


2 grep 	"字符串"  文件名		 #找这个文件里面符合条件的内容(找内容)

	  -v		反向选择
	  -i 		忽略大小写
	
	grep  -i  "root"  /etc/passwd
	grep  -v  "root"  /etc/passwd

*(ls -l 路径 /ss/xx/文件 ) 单独查看一个文件或文件夹的
/etc
passwd 账户文件
shadow 账户的密码文件(加密的)
root 是最高权限账户

```
### 关于挂载操作
    --查看当前系统有哪些挂载设备
    sudo fdisk -l  
    --挂载
    sudo mount 找到的设备路径  /mnt/cdrom
    --取消挂载
    sudo umount /mnt/cdrom (umount + 挂载的目录)

内置函数:

# ### python的内置函数
# abs    绝对值函数
# round  四舍五入
"""奇进偶不进 n.5的情况特定发生;"""
# sum    计算一个序列得和
# max    获取一个序列里边的最大值
# min    获取一个序列里边的最小值
# pow    计算某个数值的x次方
"""如果是三个参数,前两个运算的结果和第三个参数取余"""
# range  产生指定范围数据的可迭代对象
# 一个参数	# 二个参数	# 三个参数
# 正向操作		# 逆向操作
	

# bin    将10进制数据转化为二进制
# oct    将10进制数据转化为八进制
# hex    将10进制数据转化为16进制
# chr    将ASCII编码转换为字符
# ord    将字符转换为ASCII编码
# ### eval和exec在和第三方用户交互时候,谨慎使用;
# eval   将字符串当作python代码执行
#eval的局限性 不能创建变量
# exec   将字符串当作python代码执行(功能更强大)
# repr   不转义字符输出字符串
# input  接受输入字符串
# hash   生成哈希值
# 文件校验


with open("",mode="r",encoding="utf-8") as fp1, open("",mode="r",encoding="utf-8") as fp2:
	res1 = hash(fp1.read())
	res2 = hash(fp2.read())
	if res1 == res2:
		print("文件校验成功")
	else:
		print("文件校验失败")

数学模块:

# ### 数学模块
import math
#ceil()  向上取整操作 (对比内置round) ***
#floor() 向下取整操作 (对比内置round) ***
#pow()  计算一个数值的N次方(结果为浮点数) (对比内置pow)
"""结果为浮点数,必须是两个参数"""
#sqrt() 开平方运算(结果浮点数)
#fabs() 计算一个数值的绝对值 (结果浮点数) (对比内置abs)
#modf() 将一个数值拆分为整数和小数两部分组成元组
#copysign()  将参数第二个数值的正负号拷贝给第一个 (返回一个小数)
#fsum() 将一个容器数据中的数据进行求和运算 (结果浮点数)(对比内置sum)
#圆周率常数 pi ***

随机模块:

# ### 随机模块
import random

#random() 获取随机0-1之间的小数(左闭右开) 0<=x<1
#randrange() 随机获取指定范围内的整数(包含开始值,不包含结束值,间隔值) ***
#randint()   随机产生指定范围内的随机整数 (了解)
#uniform() 获取指定范围内的随机小数(左闭右开)  ***
"""
原码解析:
return 2 + (0-2) * (0<=x<1)
"""
#choice()  随机获取序列中的值(多选一)  **
#sample()  随机获取序列中的值(多选多) [返回列表] **
#shuffle() 随机打乱序列中的值(直接打乱原序列) **

day13,14日:见上方文件

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值