這個系利的初衷是回顧瑣碎知識點,但后來發現更實用的地方在于,csdn的blink不能進行檢索,匯總后,發在文章里,知識點可以被檢索到,
C++
1
C++中cout的使用, iomanip庫可以控制C++的輸出
https://blog.csdn.net/qq_35481167/article/details/82792103
c++ i++和++i的區別
i++:先參考,后增加
++i:先增加,后參考
所以cout<<i++<<endl,是輸出i的參考,之后i的值+1
cout<<++i<<endl,輸出的是i+1的值
上面鏈接里有一個很好的例子
2
自動初始化區域變數和全域變數

3
1、打開與VS2013相關的檔案,然后選擇需要批量注釋的代碼, 2、同時按住鍵盤上的“ Ctrl + K + C”以實作快速批處理注釋, 3、回傳主界面,發現快速批注操作已在vs2013中完成, [此外,您可以通過“ Ctrl + K + U”組合鍵快速批量取消注釋]
4
使用Cmake編譯檔案
第一步:安裝gcc,配置環境變數:https://blog.csdn.net/LinusZhao1018/article/details/82152960
第二步:執行cmake命令:https://zhuanlan.zhihu.com/p/59161370
期間遇到了沒有生成Makefile的問題,更換編譯器為gnu即可解決:https://blog.csdn.net/weixin_42660446/article/details/119650036
5
關于C++ vector的一些程式:
#include <iostream>
#include<vector>
int main()
{
std::cout << "Hello World!\n";
std::vector<int> name;
for (int i = 1; i <= 5; i++)
{
name.push_back(i);
}
name.insert(name.begin(), -1);
name.pop_back();
name.erase(name.end() - 2, name.end());
for (int i = 0; i < name.size(); i++)
{
std::cout << name[i] << std::endl;
}
}
6
cout不換行輸出:
for (int i = 0; i < name.size(); i++)
{
std::cout << name[i] << ' ';
}
換行輸出:
for (int i = 0; i < name.size(); i++)
{
std::cout << name[i] << std::endl;
}
7
c++ for each回圈
https://www.bilibili.com/read/cv8039359/
8
C++構造二維陣列快捷方法:
int m[2][2] = { 1,1,2,2 };
9
【C++】cmdline —— 輕量級的C++命令列決議庫
https://blog.csdn.net/xiaohui_hubei/article/details/40479811

Linux
1
linux 添加環境變數
export xxx
比如:
KMP_DUPLICATE_LIB_OK=TRUE
Python
1
from glob import glob
print(glob(r’I:\dummy_test_folder*’))
glob類似os.listdir()
2
yield使用策略:①放在for回圈里②使用時當做串列
3
兩種創建task_work_folder的方式
for item in os.listdir(path_raw_xyz_):
addon_list_str = item.split(’.’)[0]
lazy_mkdir(os.path.join(path_cooked_xyz_, addon_list_str))
這種方式順序讀取原檔案夾的每一個檔案,以該檔案的名稱命名,
for idx, item in enumerate(os.listdir(path_raw_xyz_)):
lazy_mkdir(os.path.join(path_cooked_xyz_, str(idx)))
這種方式使用enumerate函式,無法保證新建檔案夾的名稱和里面xyz檔案的名稱相同,
因為os.listdir產生的順序是先比較第一位,再比較第二位,并且沒有很好的解決辦法,
4
pycharm實用技巧:
選中代碼行
alt+ctrl+l
自動調節代碼間距,十分方便!!!!!!!!!
5
dpdispatcher中的幾個path
一種簡易的,可行的方式是把
local_root, work_base設為相同的
task_work_path是該檔案夾下面的各個子檔案夾
remote_root是在線運行的檔案夾,可以為空,存放臨時檔案
6
https://www.cnblogs.com/qi-yuan-008/p/12708901.html
python例外處理陳述句try…except…
原鏈接中提到,通用例外可以和特定例外混用,經過測驗,例外符合特定例外標準時,通用例外不再啟用
num = [9,7,0,1,4,'16']
for x in num:
try:
print (1/x)
except ZeroDivisionError:
print('error:0做除數!') #特定例外和Exception混合使用
except Exception as e:
print('the Exception is:',e)
print(' ---finished!!--- ')
7
裝包的時候報錯
Traceback (most recent call last):
File “setup.py”, line 16, in
readme = f.read()
UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0x8b in position 241: illegal multibyte sequence
這種問題可以通過修改setup.py里面的一句話解決

8
raise和raise…from的區別
python在處理例外的時候引入了raise…from,可以顯示例外間的背景關系關系,方便后續debug,這種語法的限制是,raise xxx from yyy需要保證yyy例外從屬與xxx例外,兩個例外都將顯示,
此外可以用raise…from None只顯示粗放的例外(雖然不明白這樣做有什么意義)
https://www.cnblogs.com/qixidi/p/10160614.html

9
python二維串列,索引單個元素只能類似C語言那樣,整兩個[ ]
把二維串列轉化為ndarray型別的變數以后,可以用一個[ ]進行索引
因為串列資料結構一直是一維的,只能先用[ ]索引一次,再用[ ]索引一次
而經過array轉化以后變成了二維的資料結構,可以直接索引

10
訓練神經網路,loss接連為空,可能的原因是輸入資料有空、梯度爆炸、資料未歸一化、網路結構不合理

11
https://www.cnblogs.com/changbaishan/p/8454511.html
python自動輸出百分數,安裝下面范式即可
print(f'{a:%}')
12
使用cmd命令打開Jupiter檔案夾
https://jingyan.baidu.com/article/7f41ecec78b8cb593d095ca8.html
13
使用df.to_excel(‘xxx.xlsx’)可將pandas里的DataFrame物件存進Excel里
https://blog.csdn.net/weixin_43952650/article/details/89296710
保存python串列資料到Excel
①串列和串列名構成字典{‘串列名’:串列變數}
②字典轉為DataFrame
③利用pandas預處理一下資料(這一步可以不用要)
④df.to_excel即可
14
使用os.symlink創建軟鏈接

15
python glob.glob使用
回傳滿足要求的檔案

16
https://zhuanlan.zhihu.com/p/264331630
python argparser.Argumentparser()模塊
首先建立一個parser物件,然后確定該物件從命令列讀取哪些引數
執行:從命令列讀取引數,賦值給實體化的parser物件
呼叫該物件,
17
串列的內置函式extend()可以實作兩個串列的拼接
注:python串列都是零維的,不用擔心維度的問題
+=也可以實作同樣的功能
18
python中的int型可表示的數字理論上是無限大的(只要電腦記憶體夠大),不用擔心溢位
https://www.zhihu.com/question/65014572
原因如下:
https://segmentfault.com/a/1190000015284473
簡單說就是大整數被切塊儲存在陣列里面,因此長度是動態的
19
10進制轉任意(小于36)進制方法
def baseN(num, b):
return ((num == 0) and “0”) or (baseN(num // b, b).lstrip(“0”) + “0123456789abcdefghijklmnopqrstuvwxyz”[num % b])
20
and or運算子

21
dataframe添加資料,可以向串列一樣簡單
https://zhuanlan.zhihu.com/p/257083060
22
os.path.isdir()和os.path.isfile()使用時一定要注意,引數應該是絕對路徑!!!!!!不能是相對路徑,
錯了,可以是相對路徑,但二者要在同一目錄里
if os.path.isfile(r'\vasp\123.txt'):
print('1')
#不可以
if os.path.isfile(r'vasp\123.txt'):
print('1')
#可以
if os.path.isfile(r'..\123.txt'):
print('1')
#可以
if os.path.isfile(r'\..\123.txt'):
print('1')
#可以
原始碼修改紀錄
1
修改dpdata原始碼記錄:
把’orig’鍵刪掉即可正常運行
multisystem里面有’orig’,需要刪掉

2
dpdispatcher修改實錄
run_submission腳本修改
增加了兩個try…except…陳述句
ssh_context腳本中的download函式
修改check_exists為Ture
mark_failure為False
3
monty
serialization.py
修改實錄:
為了保證正常編解碼,79行插入encoding=‘UTF-8’
SQL
1
SQL四種語言:DDL,DML,DCL,TCL
https://www.cnblogs.com/henryhappier/archive/2010/07/05/1771295.html
雜
1
記憶體基礎知識:
位 bit B是資料傳輸的基本單位,是最小一級的資訊單位
1位元組(Byte)=8位(bit)
1KB( Kilobyte,千位元組)=1024B
1MB( Megabyte,兆位元組)=1024KB
1GB( Gigabyte,吉位元組,千兆)=1024MB
1TB( Trillionbyte,萬億位元組,太位元組)=1024GB
1PB( Petabyte,千萬億位元組,拍位元組)=1024TB
C語言中:
char 1個位元組
int 4個位元組
long 8個位元組
float 4個位元組 6~7位有效數字(默認顯示6位)
double 8個位元組 15~16位有效數字(默認顯示6位)
字長由計算機系統決定,以位為單位,常見的有32位和64位
指計算機一次性可以處理的位數
2
python各型別變數所占記憶體
import sys
print(sys.getsizeof(1))
print(sys.getsizeof(1.00000000))
print(sys.getsizeof(“111111”))
print(sys.getsizeof(“1”))
print(isinstance(1,int))
輸出:28,24,50,55,True
3
左右運算元、目標數

4
windows系統下檔案命名是有限制的,最多255個字符(算上上級目錄)

5
Typora沒有公式自動補全功能,可以方便地打公式
6
體心立方 body-centered cubic (bcc)
面心立方 face-centered cubic (fcc)
密排六方 hexagonal closepacked structure (hcp)
簡單立方 simple cubic (sc)
金剛石結構 金剛石立方晶體結構 (diamond cubic lattice structure) (diamond) (四面體)
7
json檔案撰寫時注意事項
記錄一下json檔案撰寫時遇到的bug
json.decoder.JSONDecodeError: Expecting value: line 69 column 25 (char 2657)
本來接收數字的地方,給了字串
json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 15 column 5 (char 557)
鍵值和鍵都要用雙引號括起來
UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0x9c in position 1206: illegal multibyte sequence
load json檔案時要注意unicode
latex
自動編譯有問題,手動編譯可以解決問題,
π輸入時要加包,和公式符號美元
關鍵詞不區分大小寫
中文編譯用xelatex
純英文:pdflatex biblatex pdflatex pdflatex
含中文:xelatex biblatex xelatex xelatex
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/303056.html
標籤:python
