unicode編碼表_python之集合,字元編碼 - Code Treasures

文章推薦指數: 80 %
投票人數:10人

unicode編碼表_python之集合,字元編碼 ... 應用:. 處理文字檔案; python字串語法 ... Unicode表裡面放的是: 人類字元-----> Unicode格式的數字. Unicode表流程. 首頁 CodeTreasures技術部落格 unicode編碼表_python之集合,字元編碼 unicode編碼表_python之集合,字元編碼 Unicode編碼表 很全的路由器預設初始密碼集合.txt 更改mssqlserver的表的編碼格式 錯誤:編碼gbk的不可對映字元JenkinsGradle 集合,字元編碼 內容 集合型別 關係運算去重(有侷限性) 字元編碼(理論多,結論少)應用: 處理文字檔案python字串語法 ----------------------緩衝帶------------------------ 正題 1.集合型別 1.1作用 關係運算去重(有侷限性) 1.2定義 在{}中用逗號分隔開多個元素,多個元素滿足下列三個條件 集合內元素必為不可變型別集合內元素無序集合內元素沒有重複 s={1,'ds'} #s=set({1,2}) 瞭解 s={} #預設是空字典 #定義空集合 s=set() print(s,type(s)) 1.3型別轉換 set('hello') #剩下helo(無序) 1.4內建方法 關係運算 1.4.1取交集 兩者共同點 friends1={'Sb','Richard','吃雞','Egon'} friends2={'Joy','Richard','WangZheRongYao','Egon'} res=friends1&friends2 print(res) print(friends1.intersection(friedns2)) 1.4.2取合集 兩者所有著 friends1={'Sb','Richard','吃雞','Egon'} friends2={'Joy','Richard','WangZheRongYao','Egon'} print(friends1.union(friends2)) 1.4.3取差集 friends1/friends2獨有的好友獨有的好友 friends1={'Sb','Richard','吃雞','Egon'} friends2={'Joy','Richard','WangZheRongYao','Egon'} print(friends1-friends2) print(friends1.difference(friends2)) #取friends1獨有的好友 print(friends2-friends1) print(friends2.difference(friends1)) #取friends2獨有的好友 1.4.4取對稱差集 去掉兩人共有的好友 friends1={'Sb','Richard','吃雞','Egon'} friends2={'Joy','Richard','WangZheRongYao','Egon'} print(friends1^friends2) print(friends1.symmetric_difference(friends2)) 1.4.5父子集 包含的關係(比的是整體,部分不算) s1={1,2} s2={1,2,3} #不存在包含關係,以下均為Fales print(s1s2)#Fales print(s1.issuperset(s2)) print(s2.issubest(s1)) 去重 只能針對不可變型別無法保證原來的順序 其他操作(辣雞) #1.長度 s={'a','b','c'} print(len(s)) #2.成員運算 print('c'ins) #3.迴圈 foritemins: print(item) 其他內建方法 555~ s={1,2,3} s.discard(4)#刪除,沒有值不變 print(s) s.remove(4)#刪除,值不存在就報錯 s.update({1,2,5})#新增 s.pop()#刪,不指定引數隨機刪 s.add(4)#單獨新增 s.isdisjoint({5,8,9})#兩個集合完全獨立,沒有重複返回True,反之返回Fales #True 2.字元編碼 2.1字元編碼介紹 2.1.1什麼是字元編碼 人類與計算機互動,肯定是用人類的字元,比如'Good','不錯'等等, 但是,計算機只知道'100011001010101000'也就是二進位制數字,代表著高低電流 聰明的人類想,能不能制定一套規則,把我們的字元對應成計算機可以識別的‘110101100’ 於是,他們寫了一套規則這就是字元編碼表 字元編碼表存入記憶體 '上'>----翻譯---->100101000100011110010 字元編碼表已存入記憶體的值 '上'Unicode格式的數字 Unicode表流程 人類的字元(英文)--------Unicode格式的數字(記憶體中)--- || || || 硬碟硬碟 || || || (轉換)(轉換) GPK格式的二進位制Shift_JIS格式的二進位制 老的字元編碼都可以轉換為Unicode,但是不能透過Unicode互相轉換! 2.1.2.3.2utf-8 引子: 但是,想實現存入操作又支援萬國字元的話,Unicode就不行了: 如果我要是99.99%都是英文,程式碼就是'0000000010101001' 前面的'00000000'就浪費了 不說佔記憶體,這麼多東西,就會增加磁碟IO操作,進而非常慢······ 正題 utf-8意思是Unicodetransfromformat-8 transfrom的意思是轉換,format的意思是格式 utf-8的意思也就是Unicode轉換格式-8 規則如下 1個英文字元---->1byte(8位二進位制) 1箇中文字元---->3byte(24位二進位制) 有人要問了,原來中文字元一個是2byte,現在變成了3byte,這不是越最佳化越壞嗎 A:Unicode生僻字還4byte,8byte,知足長樂吧 2.1.2.4總結 記憶體固定使用Unicode,我們可以改變得是硬碟存入方式 英文+漢字--->unicode--->GBS日文+漢字--->unicode--->Shift_JIS王者(萬國字元)---Unicode--->utf-8 2.1.3文字編輯器關於字元編碼的應用 我用Noatpad++建了一個txt,把你瞅啥翻譯成了n種語言 用的是有道翻譯 儲存好沒有亂碼 我們就用這個文件來演示一下 2.1.3.1存亂了 首先確認,右下角顯示的是utf-8 可以看到,右下角顯示的是utf-8 然後剪下掉內容 點上面的語言,然後選擇Shift_JIS 儲存 底下已經變成Shift_JIS了。

沒有亂碼嗎? 目前用的還是記憶體方面(萬能Unicode) 我再退出重進一下 ??? 亂了! (日文可能不識別平假名) 此處加圖片 我的資料已不復存在 轉成utf-8也沒用了 555~~~ 2.1.3.2取亂了 首先,把utf-8改成GBK(GB2312) 隨便寫漢字 儲存重進 把編碼改成Shift_JIS 差點沒了 改成GBK 資料又得到恢復了 2.1.3.3文字檔案亂碼問題總結 存亂了:編碼格式要設定為支援檔案內字串的格式(utf-8) 取亂了:是以什麼格式存進硬盤裡的,就把錯誤的改回來 (ps:win10是因為Noatpad++只能在win10上執行) 2.1.4python應用 python2中,預設使用的是ASCII表 python3中,預設使用的是UTF-8表 保證前兩個階段不亂碼 其實在開頭加這個就可以了 #codingutf-8 保證字串不亂碼 在python2中可以這麼寫 x=u'上' python3就不用了 end 附: Unicode首頁地址 https://home.unicode.org/​home.unicode.org Unicode編碼文件地址 Unicode13.0.0​www.unicode.org 版權宣告:本文為CSDN博主「weixin_39639514」的原創文章,遵循CC4.0BY-SA版權協議,轉載請附上原文出處連結及本宣告。

原文連結:https://blog.csdn.net/weixin_39639514/article/details/111094472 隨機推薦 mesos入門 WCF中改名後無法找到ServiceHost指令中作... 【聊天機器人】NLP知識 Redis有序集合(sortedset) numpy版本不相容問題解決辦法 vue-pdf簡單用法 GROMACS中的組概念 FFMPEG獲取影片播放時長 更多相關推薦 unicode字元編碼表下載_詳解字元編碼(上) python的編碼表_python基礎之集合,字元編碼 javaunicode編碼轉換中文_如何解決在DOS編譯java類時出現的“錯...



請為這篇文章評分?