【汇总记忆:命令、语法、函数、等】
目錄
?Linux常用操作
Python語法
numpy&scipy語法
Python常用 函數(shù) 和 操作
?Linux常用操作
- 查看硬件信息:
- 磁盤空間:df -h
- 顯卡型號和個數(shù)(沒裝驅(qū)動時):lspci |grep -i nvidia
- 顯卡使用情況:
- nvidia-smi
- 每0.1秒刷新一次顯卡利用率:watch -n?0.1?-d?nvidia-smi
- CPU型號和核心數(shù):lscpu
- 內(nèi)存大小:free
- 操作系統(tǒng)版本:head -n 1 /etc/issue
- 遠程ssh連接Linux服務(wù)器命令:ssh 服務(wù)器用戶名@服務(wù)器IP(執(zhí)行后再鍵入服務(wù)器密碼即可)
- 多重視窗管理screen命令:一般ssh服務(wù)器并通過終端運行訓(xùn)練代碼時,如果想關(guān)閉ssh連接后下次還能找回上次啟動的服務(wù)器終端及其終端中顯示的內(nèi)容,就可以使用screen功能。
- 創(chuàng)建screen終端的命令:screen -S yourname
- 下次恢復(fù)screen終端的命令:screen -r yourname
- 查看服務(wù)器中當前已經(jīng)新建的screen:screen -ls
- 查找文件:sudo?find / -name +文件名(在本地全部路徑查找)
- 刪除操作:
- 刪除一個非空文件夾:sudo rm -r 目錄名
- 刪除一個文件:sudo rm 文件名
- 刪除當前路徑下,所有文件和子文件(不建議用此命令,不建議使用rm,用mv操作更安全):sudo rm -rf ./*(千萬別忘記要加個'.',不然把整個服務(wù)器內(nèi)容給刪了。)
- 轉(zhuǎn)移文件夾或文件:(移動用mv,復(fù)制用cp)
- sudo cp 路徑/文件名? 目的地路徑
- sudo cp??-r? 路徑/文件名? 目的地路徑
- 移動當前文件內(nèi)前N個文件到另一個目錄內(nèi):sudo?mv?`ls?|?head?-N` XXX另一個目錄(備注:` 和 ' 是不同的東西!)
- 本機向服務(wù)器傳輸文件:
- scp 文件名 username@XXX.XXX.XXX.XXX:/data/ym_data/
- 文件夾權(quán)限:sudo chmod 777? ××× (每個人都有讀和寫以及執(zhí)行的權(quán)限)
- 查看后臺當前運行的python腳本名稱:ps -ef | grep python
- 查看日志文件常用方法:
- 實時刷新日志文件形式查看:tail -f XXX
- 查看日志文件的最后500行:tail -n 500 XXX
- 解壓縮
- 壓縮
- 把當前路徑內(nèi)所有文件壓縮:tar cvzf my.tar ./*
- 壓縮一個或多個文件:tar cvzf my.tar file1 file2 file3
- 解壓
- 解壓一個tar文件到當前文件夾:sudo tar -xvf xxx.tar
- rar文件解壓:這樣的后綴是在win系統(tǒng)壓縮的,Ubuntu系統(tǒng)默認沒有,需要安裝rar解壓軟件:sudo apt-get install rar。
- sudo unrar x XXX.rar 解壓到一個文件夾
- sudo unrar e XXX.rar 解壓到當前路徑下
- 壓縮
-
查看當前目錄下文件大小
-
du -sh *
-
Python語法
- 類中的def __call__()函數(shù):它可以使得以“對象名()”的形式使用類,并執(zhí)行def __call__()函數(shù)里面的內(nèi)容并返回結(jié)果。Python __call__()方法(詳解版)
-
sys.path.append(XXX):導(dǎo)入XXX臨時路徑,使得該Python腳本執(zhí)行時,能夠在此路徑下去檢索腳本中引用的文件夾。
-
import sys sys.path.append('/home/ym/xidiji/nanodet-main') # 絕對路徑
-
-
map(function,iterable):根據(jù)提供的函數(shù)對指定的序列做映射(就是對iterable中每一個元素,單獨執(zhí)行function操作,得到一個新的iterable)
-
map(function,iterable,...) (1)參數(shù) function是一個函數(shù)名稱,通過該函數(shù)對后續(xù)參數(shù)iterable進行處理 iterable是一個可迭代對象,比如:字符串、列表、字典、元組、集合等 (2)返回值 map函數(shù)通過將指定的function函數(shù)依次作用在給定序列iterable中的每一個元素上,得到一個新的list并返回。注意,map不改變原list,而是返回一個新list。
-
- Q
numpy&scipy語法
重要備注:在numpy中,用2維矩陣而不是1維矩陣來表示行向量和列向量。如列向量np.array( [[1], [2], [3]] ),行向量np.array( [ [1,?2, 3] ] )。而np.array( [1, 2, 3] )這種形式的矩陣嚴格意義上既不是行向量也不是列向量。但在某些numpy函數(shù)中,會將np.array( [1, 2, 3] )默認為一個列向量(注意不是不是直覺認為的行向量)。
- python中的“*”,“np.dot()” 和 “@” 的區(qū)別:假設(shè)AB都是2維數(shù)組
-
np.dot(A, B) : 就是矩陣乘法
-
A * B:這個很雜亂,不管A和B形態(tài)怎么樣,A*B都會有個結(jié)果。。。只說兩種情況①如果AB行列完全一致,則相當于相應(yīng)位置的元素做個乘法。②如果A僅只有一個元素,如[ [ 5?] ],相當于B數(shù)組每個元素乘以5。
-
- np.eye(N, M):返回的是一個二維2的數(shù)組(N,M),對角線的地方為1,其余的地方為0。
-
np.diag(X):生成或提取X的對角線部分(diagonal)
-
X是一個1維數(shù)組時,結(jié)果形成一個以一維數(shù)組為對角線元素的矩陣。
-
X是一個二維矩陣時,結(jié)果輸出矩陣的對角線元素。
-
??????
-
- np.square(array):array內(nèi)各元素值做個平方(不改變array維度)。
-
矩陣拼接:
-
np.c_(array1, array2):(column列方向)左右拼接兩個矩陣(要求兩個矩陣 行 數(shù)相等)。
- np.r_(array1, array2):(row行方向)上下拼接兩個矩陣(要求兩個矩陣 列 數(shù)相等)。
-
- np.linalg.multi_dot(array1, array2 , , ,?) :矩陣乘法。
-
scipy.linalg.solve_triangular(a, b):已知a(必須是三角矩陣)和b,求解方程a?x?=?b中的x。
-
驗證返回的結(jié)果是否正確的方法:看看 a.dot(x) 是否等于b。
-
- T
Python常用 函數(shù) 和 操作
-
遍歷文件夾內(nèi)所有子文件夾及其內(nèi)容
-
import os# 遍歷文件夾 def walkFile(file):for root, dirs, files in os.walk(file):# root 表示當前正在訪問的文件夾路徑# dirs 表示該文件夾下的子目錄名list# files 表示該文件夾下的文件list# 遍歷所有的子文件夾for d in dirs:print(os.path.join(root, d))# 遍歷每個子文件夾內(nèi)文件for f in files:print(os.path.join(root, f)) #在win系統(tǒng)里,這里的路徑結(jié)果同時包含‘/’和‘\’,需要replace把‘\’全部替換成‘/’walkFile("E:/project_jy/data/training_top3")
-
- 遍歷某文件夾內(nèi)所有子文件名稱
-
import osfile_NameLists = os.listdir(file_dir) # file_dir:某文件夾路徑if len(file_NameLists) != 0:for file_name in file_NameLists:print(file_name)
-
- 讀取和寫入txt文件
- 一行行讀取
-
with open("test.txt", "r") as f:data = f.readline()print(data)
-
- 所有內(nèi)容放到列表中
-
with open("test.txt", "r") as f:data = f.readlines()print(data)#備注:readlines會讀到換行符,可用如下方法去除: with open("test.txt", "r") as f:for line in f.readlines():line = line.strip('\n') #去掉列表中每一個元素的換行符print(line)
-
- 寫入txt
-
with open("test.txt","w") as f:f.write("這是個測試!") # 自帶文件關(guān)閉功能,不需要再寫f.close()讀寫模式
要了解文件讀寫模式,需要了解幾種模式的區(qū)別,以及對應(yīng)指針
r :? ?讀取文件,若文件不存在則會報錯
w:? ?寫入文件,若文件不存在則會先創(chuàng)建再寫入,會覆蓋原文件
a :? ?寫入文件,若文件不存在則會先創(chuàng)建再寫入,但不會覆蓋原文件,而是追加在文件末尾
rb,wb:? 分別于r,w類似,但是用于讀寫二進制文件
r+ :? ?可讀、可寫,文件不存在也會報錯,寫操作時會覆蓋
w+ :? ?可讀,可寫,文件不存在先創(chuàng)建,會覆蓋
a+ :? 可讀、可寫,文件不存在先創(chuàng)建,不會覆蓋,追加在末尾
-
- 一行行讀取
- 3
- 3
- 3
- 3
- 3
- 3
通用性問題:
- ssh配置免密登錄失敗問題(見第4項:設(shè)置StrictModes no)???????https://jingyan.baidu.com/article/454316ab3176d8f7a7c03ab9.html
-
Ubuntu16.04系統(tǒng)無法上網(wǎng)問題解決?Ubuntu16.04系統(tǒng)無法上網(wǎng)問題解決 - 知乎
總結(jié)
以上是生活随笔為你收集整理的【汇总记忆:命令、语法、函数、等】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ViT(vision transform
- 下一篇: VS上配置opencv249所添加的附加