參考
【https://blog.csdn.net/qq_33679504/article/details/80516751】【tuple基本知識點】
tuple 結構是不可以修改的,也不可以進行append,起初我以為和matlab中的 cell 結構相似,結果emmm……
首次了解 tuple 結構,是在 np.where() 中返回的查詢結果進行 type() 類型查看時候發現的。
例如:
np.where(data_t2 == Query) # 查詢data_t2這個dataframe中等於Query代表的字符串的位置。 # 檢索結果 # (array([5914], dtype=int64), array([0], dtype=int64))
上述檢索結果: (array([5914], dtype=int64), array([0], dtype=int64)) 當中,是一個 tuple元組,是一個里面包含了兩個 array結構的 tuple元組。
type(np.where(data_t2 == Query)) # 對np.where的反饋結果進行type() 命令查看類型 # 返回結果為 # <type 'tuple'>
繼續向 tuple 里面查看
np.where(data_t2 == Query)[0] # 結果顯示 # array([5914], dtype=int64) np.where(data_t2 == Query)[1] # 結果顯示 # array([0], dtype=int64) type(np.where(data_t2 == Query)[0]) # 再使用type()對tuple元組內進行類型查看 # 結果顯示 # <type 'numpy.ndarray'>
【判斷 tuple 里是否為空的方法?判斷list是否為空?】
【參考】
【https://www.jb51.net/article/149281.htm】
【https://blog.csdn.net/MG_ApinG/article/details/85450197】【這個比較全】
我采用了根據 len() 函數的返回長度值確定是否為空,若空,則 len值 是0;非空,則 len值 不為0;
len(np.where(data_t1 == Query)[0] ) # 0 len(np.where(data_t1 == Query)[1] ) # 0 len(np.where(data_t2 == Query)[0] ) # 1 len(np.where(data_t2 == Query)[1] ) # 1
raw_input() 函數:讀取鍵盤鍵入值,讀取用戶鍵盤輸入。
raw_input() 函數從標准輸入讀取一個行。並返回一個字符串(去掉結尾的換行符):
str = raw_input("Enter your input: ");
print "Received input is : ", str
【舉例】
Query=raw_input('Enter your Query Word:') # Enter your Query Word:>? 暴雨 print "Received input is : ", Query # Received input is : 暴雨
【一個問題】
【unicode編碼轉str】
進行上述鍵入raw_input()函數時,發現raw_input()讀入的中文字符,其type()類型為“unicode”。
而很遺憾的是,python中變量type()是string(str)類型的變量,二者使用的中文編碼方式不一樣,python變量這里默認是“utf-8”格式的編碼
md找了好多文檔結果帶着跑了彎路,都在說什么用gbk編碼、gb2312、blablabla的都不是我要的……(主要還是對各類編碼不太了解 想了解編碼格式可以戳這個 博客)
如何對python中的字符進行編碼與解碼 請戳這個 博客
【舉例】
我使用raw_input() 並且完成編碼轉換的
Query='暴雨' Query # 屏顯: # '\xe6\x9a\xb4\xe9\x9b\xa8' type(Query) # 屏顯: # <type 'str'> # ============================= Query=raw_input('Enter your Query Word:') # 屏顯 並鍵入 # Enter your Query Word:>? 暴雨 Query # 屏顯 # u'\u66b4\u96e8' 可以看到同樣都是Query為“暴雨” 但二者編出的碼不一樣 type(Query) # 屏顯 # <type 'unicode'> 該Query的編碼方式是unicode 而最上面是str 最上面的形式才是我想要的 #=============================== Query=raw_input('Enter your Query Word:').encode('utf-8') # 屏顯 並鍵入 # Enter your Query Word:>? 暴雨 type(Query) # 屏顯 # <type 'str'> Query # 屏顯 # '\xe6\x9a\xb4\xe9\x9b\xa8' 可以看到現在和最上面的Query“暴雨”終於一樣了 二者編碼都是str了 而且碼也一致了
其他
待補充。。。