新想法:
送礦泉水---送貨app
linux操作系統
bin sbin 可執行程序
home 目錄
temp 臨時生成的目錄
根目錄:
/
用戶目錄:
用戶工作目錄或家目錄
/home/user
相對路徑:
上一層路徑(父目錄) 。。
當前路徑 。
根目錄 。。和。 都是代表根目錄
文件的權限:
r --read
w --write
x --執行
Linux命令操作:最少的有200個
Linux命令格式: command [-options] [parameter]
黑窗口 ctrl + shift + +/- 字體放大縮小
ls 顯示當前路徑
pwd 顯示當前路徑
cd 。。 跳轉到
ls -l 查看的文件夾和文件
drwxrwxr文件
- 文件夾
cd 文件夾: 跳到文件或者文件夾
自動補全功能
cd D(ownloads) cd + table鍵
空格鍵 翻頁功能
q 退出文件
歷史命令:
history
touch 1.py 在當前目錄創建一個1.py文件(前提是獲取超級管理員權限)
ls -lh 查看文件,並將文件的大小以kb的形式顯示出來
ls -alh 顯示隱藏文件並顯示以kb大小的文件
ls *.py 顯示以什麼結尾的文件
ls 1.* 顯示以1開頭的文件
ls 1?* ? 代表站位符
ls 1[23]3.py [23]裏面代表是2或者3的
ls \*a 查找文件名爲*a 的文件
重定向:
ls -lha >ls.txt 創建文件,並將內容顯示到文件中
--> 接下來用記事本打開:gedit ls.txt
ls -lha >> ls.txt: 在ls.txt文件中繼續追加內容,前面的內容不擅長
cat ls.txt 查看文件內容,不可以編輯
more ls.txt 分頁顯示,按空格進行查看頁面內容
水管功能
ls -alh | more 右邊的程序調用左邊的程序,就是將左邊的程序顯示到右邊去。
cd ~ ---> pwd 跳轉到家目錄
cd ctrl c 強制停止
cd ctrl z 強制停止
cd - 快速回到上一次路徑
pwd 顯示當前文件路徑
mkdir 創建文件夾
rmdir dongge/ 移除文件夾 remove的意思,刪除非空文件夾
rm 2.py 刪除文件
rm dongge -r 刪除帶有文件的文件夾,遞歸的刪除
rm dongge -rf 強制刪除帶有文件的文件夾
創建鏈接文件ln 相當於快捷文件
軟連接****
ln -s 123.py 123link_s.py 前面爲源文件,後面爲快捷文件
硬鏈接****
同樣指向文件,不止一個快捷鍵指向源文件
查看文件內容,cat (也可以完成多個文件的合併)
cat 234.py > 100.py 合併文件內容
cat 324.py >> 230.py 合併文件內容
grep ‘oo’ 101.py 模糊搜索 oo 在文件的位置
grep ’箭頭上00‘ 搜索以什麼開頭的
grep [Hhello]
拷貝
cp 23.py test/ 拷貝。。到哪個項目下
mv 12.py test/ 移動
mv 12.py 14.py 重命名
tree 以樹的方式進行顯示
打包
tar -cvf(test.tar) *.py
解包
tar -xvf test.tar
壓縮包
gzip test.tar ====> test.tar.gz
gzip -d test.tar.gz 解壓縮操作--->test.tar
打包解包
tar -zcvf test.tar.gz *.py
切換到超級管理員
sudo -s 美元號變爲jin號
系統管理
查看日曆
cal -2016
查看時間
date
查看進程信息:ps
ps -aux 查看進行程序
ctrl +shift +z 打開新的命令窗口
kill -9 823 絕對殺死程序
需要管理員權限
reboot 重啓
shutdown 關機
top 顯示資源利用率的情況
df 檢測磁盤空間
df -lh
du -a -lh 查看當前目錄的情況
查看網卡信息:
ipconfig
ping 120。1204.99 連接
第二天:
在Ubuntu下:
登陸用戶:
who
當前登陸用戶:
whoami
遠程登陸電腦
先ping 192.168.21.76
然後
ssh admin@192.168.21.76 --y
who 查看當前登陸的用戶信息 whoami 查看我是誰
ssh 用戶名@ip地址
exit 退出
用戶管理:
1,sudo -s
2,添加新的賬戶:useradd laowang
3 passwd laowang 輸入老王賬號的密碼,
4 exit 退出,回到一開始的用戶,回到上一個用戶
5 su - laowang -->切換到老王的賬戶
--> useradd loawang -m --->自動創建家目錄
cat /etc/passwd 查看所有的用戶名跟密碼
刪除用戶
userdel laozhang
ubutun sudu
centerOS su root
查看組:
groupadd aa
groupmod Ubuntu下
刪除添加組 groupadd www groupdel www
修改用戶組
usermod -g aaa laosong aaa->變爲老宋
查看用戶所在組:groups python (adm sudo)
改組的功能:
usermod -a -G adm laosong
usermod -a -G sudo laosong
修改文件權限:chmod
-rw--W-r- -
第一組表示文件擁有者權限 文件同組者權限可不可以執行)其他人_
Ubuntu下安裝軟件:
命令行安裝:gedit /etc/apt/sources.list
apt-get update 更新如那件
apt-get install sl 安裝軟件包
1 備份:
cp /etc/apt/sources.list /etc/apt/sources.list.backup
2 修改 更新源
gedit /etc/apt/sources.list
3 sudo -s 切換到管理員
可以爲 sudo
4 sudo apt-get update 讓更新源生效
5 sudo apt-get install 軟件的名字
6 刪除軟件
sudo apt-get remove package 刪除包
sudo apt-cache search package 搜索軟件包
sudo apt-cache show package 獲取包信息
sudo apt-get install package --reinstall 重新安裝包
sudo apt-get source package 下載軟件的源碼
------等等
ftp服務器(常用服務器構建)
FTP : File Transfer Protocol 文件傳輸協議
安裝vsftpd服務器\
sudo apt-get install vsftpd
配置vsftpd.conf文件
sudo vi /etc/vsftpd.conf
SSH 服務器搭建
sudo apt-get install openssh-server
遠程登陸
遠程拷貝文件
scp -r(是否上傳文件夾) FileName 源文件 用戶名@ip :home/python/Desktop 文件地址
從遠端拷貝到本地:
scp python@IP 本地路徑 遠程文件路徑+文件名
拷貝到-->
scp a.txt 128.128.323.23:/home/python/Desktop
編輯器vim Visual interface 簡稱
vim hello.py
1 打開vim後 默認進入一種狀態->命令模式
輸入小寫i --》由命令模式轉換到編輯模式
esc --》 退出編輯模式
末行模式:光標在最後
編碼模式按下esc狀態 --》輸入: wq (保存退出)
等於 ---:x
vim 常見命令:
上下左右移動hjkl
選中字母按下i 輸入abc 會再i前面輸入
選中字母按下a ,輸入abc 會在字母后面輸入abc
輸入I/A 直接跳到行首,輸入abc,會在行首出現abc
輸入O/o 從命令模式進入編輯模式
G/g 快速定位到9, --》9G 此時並沒有進入編輯模式
快速回到最後一行 G --gg 回到第一行
w 一個單詞一個單詞的調 w-word
{ 段落的跳
刪除 dd 一行
5dd 指定數 向後刪除5行
u 撤銷
x 向後面進行刪除
X 向前面進行刪除
D 光標後面到行末全刪除
D0
ctrl +r 反撤銷
文本右移/左移 》
:q! 強制退出並不進行保存
yy張貼 p複製 : 張貼複製
p2 yy : 下兩行進行復制張貼
dd 剪切/刪除的功能
rH 替換
: 5,15s/main/MAIN/g 指定行數的替換
v 選中代碼 }} 右縮進
: 12,23 >>> 整體縮進3次 行數開頭,行數結尾
python 基礎課程開始
使用地方:
Web應用開發:後臺開發
Django,TurboGears,web2py,Zope等可以輕鬆開發和管理複雜的web程序
操作系統管理,服務器運維的自動化腳本
python可以做翻牆軟件
科學計算
NumPy,SciPy,Matplotlib 編寫科學計算程序
桌面軟件
PyQt,PySide,wxPython,PyGTK快速開發桌面應用程序
服務器軟件
遊戲
Python支持更多的特性和數據類型,Lua的功能簡單,體積小,
構思實現,產品早起原型和迭代
YouTube,Google,Yahoo,NASA都在使用python
第一種方式:
直接在命令行中輸入 print ("dsf")
運行 python helloworld.py 第二種方式
第三種方式:
vi helloworld2.py
chmod u+x helloworld.py
在python文件第一行
#!usr/bin/python --> 判斷是否有可執行程序
註釋:以#開頭的就是註釋
多行註釋:‘’‘
的沙發斯蒂芬
’‘’
讓python 支持中文
在文件第一行加入
#encoding=utf-8
數據類型:
Numbers數字
int 有符號整型
long 長整型,也可以代表八位和十六位進制
float 浮點型
complex 複數
boolean true,false
String字符串
List列表
Tuple元祖
Dictionary字典
查看符號類型type(var)
查看系統關鍵字:
import keyword
打印值:
print("my english scrore is %/d"%scrore)
print("my english scrore is %/d ,,,math scrore is %d"(score,mathScore))
\n 換行
數據類型轉換:
num= int("100)
python3 input
python2 raw_input input
if age>10 and money >100 and handsome ==1:
print("他是高富帥")
else:
print("呵呵")
if 條件:
滿足條件的時候做的事情
elif 條件2:
滿足條件2的時候坐的事情
elif 條件3:
滿足條件3的時候做的事情
if tiaojian:
pass #進行佔位
import random
random.randin(3,5)
產生3,5的隨機數
數據的顯示問題:
%-2d 不夠兩位也要佔用兩位,靠左邊顯示
9*9乘法表視頻
for 變量 in XXX列表或者字符串等:
循環滿足條件時執行的代碼
else:
循環不滿足條件時執行的代碼
查找是否存在
if findName in nameList:
print("找到了")
else
print("沒有找到")
不存在 not in
返回字符在字符串中的下標:index names.index("a")
刪除
del:根據下標索引進行刪除
pop:刪除最後一個元素
remove: 根據元素的值進行刪除
列表的操作:
增
append() insert(下標,“a) insert(2,"acb")
刪
del moveNames[0] 下標刪除
movieNames.pop() 刪除最後一個
movieNames.remove("喜洋洋") 按照元素的值進行刪除
改
if "acv" in names:
xx
not in
index()
count()
自己編寫代碼來實現:在遍歷的過程中宏進新年給判斷,如果找到了那麼久標記退出,如果麼有找到標記,退出
查
列表的嵌套:
列表裏面還有列表
[['北京大學','清華大學'],[‘南開大學’,'天津大學'],['山東大學']]
for temp in schoolNames:
print(temp)
for temp2 in temp:
print(temp2)
print("----------")
元祖只要不是修改都可以進行操作。相對於列表來說。
全局變量
如果需要進行全局修改,需要在修改之前設置 global
全局變量在方法中都可以進行調用。
break 退出循環
python的引用:
使用id
a = 100
id(a) --->得到一個地址的引用
魔法方法def __str__(self):
return "dsfsadf"
類方法:
@classmethod
def setNewAddress(self):
pass
類對象可以直接調用類屬性,也可以直接調用類方法
但是類對象不允許調用 實例屬性,並也不允許調用實例方法
如果是一個實例對象
它可以獲取實例屬性和類屬性的值,但是隻能修改實例屬性,不能修改類屬性
它還可以調用實例方法和類方法。
異常的處理:
try:
進行的操作代碼
except (IOError,NameError) as errorMsg:
發生異常後的錯誤代碼
print(errorMsg)
else:
沒有出現異常
finally:
不管有沒有異常,都會執行
try:
f = file(test.txt)
while True:
line = f.readline()
....
finally:
f.close()
print("關閉文件")
raise 引發一個自定義的異常類
raise ShortInputException(len(s),3) // 自定義的異常
python常用三方api
PIL:Python Imaging Library,已經是Python平臺事實上的圖像處理標準庫了。PIL功能非常強大,但API卻非常簡單易用。
由於PIL僅支持到Python 2.7,加上年久失修,於是一羣志願者在PIL的基礎上創建了兼容的版本,名字叫Pillow,支持最新Python 3.x,又加入了許多新特性,因此,我們可以直接安裝使用Pillow。
飛機大戰
通過練習,將對象思想結合到一起
from PIL import Image
# 打開一個jpg圖像文件,注意是當前路徑:
im = Image.open('test.jpg')
# 獲得圖像尺寸:
w, h = im.size
print('Original image size: %sx%s' % (w, h))
# 縮放到50%:
im.thumbnail((w//2, h//2))
print('Resize image to: %sx%s' % (w//2, h//2))
# 把縮放後的圖像用jpeg格式保存:
im.save('thumbnail.jpg', 'jpeg')
PIL的ImageDraw提供了一系列繪圖方法,讓我們可以直接繪圖。比如要生成字母驗證碼圖片
from PIL import Image, ImageDraw, ImageFont, ImageFilter
import random
# 隨機字母:
def rndChar():
return chr(random.randint(65, 90))
# 隨機顏色1:
def rndColor():
return (random.randint(64, 255), random.randint(64, 255), random.randint(64, 255))
# 隨機顏色2:
def rndColor2():
return (random.randint(32, 127), random.randint(32, 127), random.randint(32, 127))
# 240 x 60:
width = 60 * 4
height = 60
image = Image.new('RGB', (width, height), (255, 255, 255))
# 創建Font對象:
font = ImageFont.truetype('Arial.ttf', 36)
# 創建Draw對象:
draw = ImageDraw.Draw(image)
# 填充每個像素:
for x in range(width):
for y in range(height):
draw.point((x, y), fill=rndColor())
# 輸出文字:
for t in range(4):
draw.text((60 * t + 10, 10), rndChar(), font=font, fill=rndColor2())
# 模糊:
image = image.filter(ImageFilter.BLUR)
image.save('code.jpg', 'jpeg')
python入門基礎筆記
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.