IOS(Apple移动端)
Mac OS
Linux :(linux基于Unix 独立出来的系统)
安卓(Android)
Ubuntu 16.04(当前教学版本)
ReadHat
CentOS
回顾:
Ctrl + Alt + Enter :虚拟机全屏/退出全屏
Ctrl + Alt :释放鼠标
ctrl + shift + "+" : 终端字体放大
ctrl + "-" : 终端字体缩小
ctrl + d:退出终端
ctrl + l : 清屏
ctrl + c : 终止当前命令的执行
ctrl + s : 隐藏终端输出
ctrl + q : 恢复终端输出
init 0 : 关机
init 6 : 重启
pwd:显示当前的路径位置
ls:查看当前位置有什么内容
ls -l :以列表形式显示
ls -a :显示所有内容(包含隐藏)
cd:改变当前的工作路径
cd 绝对路径 :cd /home/tarena/aid1806/
cd 相对路径
cd .. :回退到上一级目录
cd :回到用户主目录
mkdir:创建一个或者多个文件
touch:创建一个或者多个文
tree:显示目录树
rm -r : 递归删除文件夹内所有内容
rm -f : 强制删除,不给任何提示
rm -i : 删除前给提示(y代表yes,n代表no)
sudo:用超级用户root的权限执行一条命令
tar -zcvf 压缩包名字.tar.gz 文件夹/文件:打包压缩
tar -zxvf 压缩包名字.tar.gz [-C 路径]:解压缩包
z : gzip对包进行压缩
c : 创建包 create
x : 解包
v : 显示操作的文件细节 verbose
f : 文件名 file
cp:复制文件/文件夹
mv:剪切 / 重命名
练习1:
1、切换到目录:/home/tarena/anaconda3/bin
2、查看当前所在的路径
3、以列表形式列出当前路径中所有内容(包含隐藏文件或者目录)
4、切换到当前路径的上一级目录
5、切换到 /etc 目录,查看 /etc 有哪些内容
6、直接切换到用户主目录
答案:
tarena@tedu:~$ cd anaconda3/bin/
tarena@tedu:~/anaconda3/bin$ pwd
/home/tarena/anaconda3/bin
tarena@tedu:~/anaconda3/bin$ ls -la
总用量 27888
drwxrwxr-x 2 tarena tarena 12288 7月 17 2017 .
drwxrwxr-x 20 tarena tarena 4096 7月 17 2017 ..
lrwxrwxrwx 1 tarena tarena 8 7月 17 2017 2to3 -> 2to3-3.6
-rwxrwxr-x 1 tarena tarena 110 7月 17 2017 2to3-3.6
-rwxrwxr-x 2 tarena tarena 3802 5月 26 2017 activate
-rwxrwxr-x 1 tarena tarena 165 7月 17 2017 anaconda
-rwxrwxr-x 1 tarena tarena 167 7月 17 2017 anaconda-navigator
-rwxrwxr-x 1 tarena tarena 153 7月 17 2017 anaconda-project
-rwxrwxr-x 1 tarena tarena 12003 7月 17 2017 asadmin
tarena@tedu:~/anaconda3/bin$ cd ..
tarena@tedu:~/anaconda3$ cd etc/
tarena@tedu:~/anaconda3/etc$ ls
dbus-1 fish fonts jupyter rc.d
tarena@tedu:~/anaconda3/etc$ cd
练习2:
1、在用户主目录下创建目录 mydir1 、mydir2
2、在mydir1下创建文件:file1、file2、file3
3、将mydir1打包压缩为mydir1.tar.gz,放在用户主目录下
4、将mydir1.tar.gz剪切到mydir1目录下
5、将mydir1.tar.gz解压缩,放到mydir2目录下(-C选项)
答案:
tarena@tedu:~$ mkdir mydir1 mydir2
tarena@tedu:~$ cd mydir1
tarena@tedu:~/mydir1$ touch file1 file2 file3
tarena@tedu:~/mydir1$ cd ..
tarena@tedu:~$ tar -zcvf mydir1.tar.gz mydir1
mydir1/
mydir1/file3
mydir1/file1
mydir1/file2
tarena@tedu:~$ ls
anaconda3 mydir2 yang 文档
core my_env 公共的 下载
examples.desktop pycharm-2017.1.5 模板 音乐
mydir1 pycharm-professional-2017.1.5.tar.gz 视频 桌面
mydir1.tar.gz PycharmProjects 图片
tarena@tedu:~$ mv mydir1.tar.gz mydir1
tarena@tedu:~$ cd mydir1
tarena@tedu:~/mydir1$ ls
file1 file2 file3 mydir1.tar.gz
tarena@tedu:~/mydir1$ tar -zxvf mydir1.tar.gz -C ~/mydir2
mydir1/
mydir1/file3
mydir1/file1
mydir1/file2
tarena@tedu:~/mydir1$ cd ~/mydir2
tarena@tedu:~/mydir2$ ls
mydir1
tarena@tedu:~/mydir2$ cd mydir1/
tarena@tedu:~/mydir2/mydir1$ ls
file1 file2 file3
tarena@tedu:~/mydir2/mydir1$
练习3:
1、在用户主目录下创建目录:AI/Python/Linux
2、在Linux下创建文件:linux1 、linux2
3、在Python下创建文件:python1 、python2:
4、切换到AI目录,查看当前所在路径
5、直接切换到用户主目录
答案:
tarena@tedu:~$ mkdir -p AI/python/linux
tarena@tedu:~$ cd AI/python/linux
tarena@tedu:~/AI/python/linux$ touch linux1 linux2
tarena@tedu:~/AI/python/linux$ cd ..
tarena@tedu:~/AI/python$ touch python1 python2
tarena@tedu:~/AI/python$ cd ~/AI
tarena@tedu:~/AI$ cd
练习4:
1、在用户主目录创建如下结构:PYTHON/Linux/day01
2、在 day01 下创建三个文件:day01.txt day02.txt day03.txt
3、将 day03.txt 删除
4、将 day02.txt 文件时间更新为当前时间
5、在用户主目录下创建 python/Base
6、在Base下创建 day01 day02 day03 三个文件夹
7、在day01下创建一个文件 day01.txt
8、删除 python/Base 文件夹内的全部内容
答案:
tarena@tedu:~$ mkdir -p PYTHON/linux/day01
tarena@tedu:~$ cd PYTHON/linux/day01
tarena@tedu:~/PYTHON/linux/day01$ touch day01.txt day02.txt day03.ttx
tarena@tedu:~/PYTHON/linux/day01$ rm -rf day03.txt
tarena@tedu:~/PYTHON/linux/day01$ touch day02.txt
tarena@tedu:~/PYTHON/linux/day01$ mkdir -p ~/python/base
tarena@tedu:~/PYTHON/linux/day01$ pwd
/home/tarena/PYTHON/linux/day01
tarena@tedu:~/PYTHON/linux/day01$ ls
day01.txt day02.txt day03.ttx
tarena@tedu:~/PYTHON/linux/day01$ cd ~/python/base
tarena@tedu:~/python/base$ mkdir day01 day02 day03
tarena@tedu:~/python/base$ cd day01
tarena@tedu:~/python/base/day01$ touch day01.txt
tarena@tedu:~/python/base/day01$ cd
tarena@tedu:~$ rm -rf python
一、二进制
1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
0=0 1=1 2=10 3=11 4=100 5=101 6=110 7=111 8=1000 9=1001 .... 127=1111111
二进制算法= 2**n-1 幂运算-1
· 十进制整数转二进制数:“除以2取余,逆序排列”(除二取 余法)
89÷2 ……1
44÷2 ……0
22÷2 ……0
11÷2 ……1
5÷2 ……1
2÷2 ……0
十进制整数转八进制数:
000 -> 0 | 004-> 4 | 010=8
001 -> 1 |005 -> 5| 011=9
002 -> 2 |006 -> 6 | 012=10
003 -> 3 |007 -> 7 | 013=11
十进制整数转十六进制数:
0000 -> 0 0100 -> 4 1000 -> 8 1100 -> C
0001 -> 1 0101 -> 5 1001 -> 9 1101 -> D
0010 -> 2 0110 -> 6 1010 -> A 1110 -> E
0011 -> 3 0111 -> 7 1011 -> B 1111 -> F
二、编码
Ascll码 255个字符
Ascll码表每个字符统一占用1个字节
Ascll码表不支持中文
支持中文的第一张表 叫GB2312
1980年 GB3212 支持6700+字
1995年 GBK1.0 支持20000字
2000年 GB18030 支持27000字
unicode :万国码 (支持所有国家的编码) 并且一个字符 统一占用2个字节
由于出于它的效率不高,对于存储和传输来说都很耗资源。为了提高Unicode的编码效率,于是就出现了UTF-8编码
UTF-8 、
UTF-8是 unicode的扩展集 英文占一个字节 东南亚 欧洲国家2个字节 中文3个字节
Assic --> GB2312 --> GBK1.0 --> GB18030 --> unicode --> UTF-8
Unicode是可以向下兼容GB2312、GBK 、GB17030
而UTF8 重新划分分类和次序 不再是原来的次序编码
#!-*-coding:utf-8 -*- (声明使用utf8编码)
#codig:utf-8(声明使用utf8编码)
print u“我爱北京天安门?”(u代表转换Unicode格式)转换编码 打印