字典对中文字符串进行排序 python_Python基础入门:字符串和字典
一、學習內容
字符串
字典
二、學習概述
1. 字符串的定義
- Python 中字符串被定義為引號之間的字符集合。
- Python 支持使用成對的 單引號 或 雙引號。
- Python 的常用轉義字符
2. 字符串的切片與拼接
- 類似于元組具有不可修改性
- 從 0 開始 (和 Java 一樣)
- 切片通常寫成 start:end 這種形式,包括「start 索引」對應的元素,不包括「end索引」對應的元素。
- 索引值可正可負,正索引從 0 開始,從左往右;負索引從 -1 開始,從右往左。使用負數索引時,會從最后一個元素開始計數。最后一個元素的位置編號是 -1。
3. 字符串的常用內置方法
- capitalize() 將字符串的第一個字符轉換為大寫。
- lower() 轉換字符串中所有大寫字符為小寫。
- upper() 轉換字符串中的小寫字母為大寫。
- swapcase() 將字符串中大寫轉換為小寫,小寫轉換為大寫。
- count(str, beg= 0,end=len(string)) 返回str在 string 里面出現的次數,如果beg或者end指定則返回指定范圍內str出現的次數。
- endswith(suffix, beg=0, end=len(string)) 檢查字符串是否以指定子字符串 suffix 結束,如果是,返回 True,否則返回 False。如果 beg 和 end 指定值,則在指定范圍內檢查。
- startswith(substr, beg=0,end=len(string)) 檢查字符串是否以指定子字符串 substr 開頭,如果是,返回 True,否則返回 False。如果 beg 和 end 指定值,則在指定范圍內檢查。
- find(str, beg=0, end=len(string)) 檢測 str 是否包含在字符串中,如果指定范圍 beg 和 end,則檢查是否包含在指定范圍內,如果包含,返回開始的索引值,否則返回 -1。
- rfind(str, beg=0,end=len(string)) 類似于 find() 函數,不過是從右邊開始查找。
- isnumeric() 如果字符串中只包含數字字符,則返回 True,否則返回 False。
- ljust(width[, fillchar])返回一個原字符串左對齊,并使用fillchar(默認空格)填充至長度width的新字符串。
- rjust(width[, fillchar])返回一個原字符串右對齊,并使用fillchar(默認空格)填充至長度width的新字符串。
- lstrip([chars]) 截掉字符串左邊的空格或指定字符。
- rstrip([chars]) 刪除字符串末尾的空格或指定字符。
- strip([chars]) 在字符串上執行lstrip()和rstrip()。
- partition(sub) 找到子字符串sub,把字符串分為一個三元組(pre_sub,sub,fol_sub),如果字符串中不包含sub則返回('原字符串','','')。
- rpartition(sub)類似于partition()方法,不過是從右邊開始查找。
- replace(old, new [, max]) 把 將字符串中的old替換成new,如果max指定,則替換不超過max次。
- split(str="", num) 不帶參數默認是以空格為分隔符切片字符串,如果num參數有設置,則僅分隔num個子字符串,返回切片后的子字符串拼接的列表。
- splitlines([keepends]) 按照行('r', 'rn', n')分隔,返回一個包含各行作為元素的列表,如果參數keepends為 False,不包含換行符,如果為 True,則保留換行符。
- maketrans(intab, outtab) 創建字符映射的轉換表,第一個參數是字符串,表示需要轉換的字符,第二個參數也是字符串表示轉換的目標。
- translate(table, deletechars="") 根據參數table給出的表,轉換字符串的字符,要過濾掉的字符放到deletechars參數中。
4. 字符串格式化
- format 格式化函數
- Python 字符串格式化符號
列子
print('%c' % 97) # a
print('%c %c %c' % (97, 98, 99)) # a b c
print('%d + %d = %d' % (4, 5, 9)) # 4 + 5 = 9
print("我叫 %s 今年 %d 歲!" % ('小明', 10)) # 我叫 小明 今年 10 歲!
print('%o' % 10) # 12
print('%x' % 10) # a
print('%X' % 10) # A
print('%f' % 27.658) # 27.658000
print('%e' % 27.658) # 2.765800e+01
print('%E' % 27.658) # 2.765800E+01
print('%g' % 27.658) # 27.658
text = "I am %d years old." % 22
print("I said: %s." % text) # I said: I am 22 years old..
print("I said: %r." % text) # I said: 'I am 22 years old.'
a a b c 4 + 5 = 9 我叫 小明 今年 10 歲! 12 a A 27.658000 2.765800e+01 2.765800E+01 27.658 I said: I am 22 years old.. I said: 'I am 22 years old.'.
- 格式化操作符輔助指令
字典
1. 可變類型與不可變類型
- 序列是以連續的整數為索引,與此不同的是,字典以"關鍵字"為索引,關鍵字可以是任意不可變類型,通常用字符串或數值。
- 字典是 Python 唯一的一個 映射類型,字符串、元組、列表屬于序列類型。
那么如何快速判斷一個數據類型 X 是不是可變類型的呢?兩種方法:
- 麻煩方法:用 id(X) 函數,對 X 進行某種操作,比較操作前后的 id,如果不一樣,則 X 不可變,如果一樣,則 X 可變。
- 便捷方法:用 hash(X),只要不報錯,證明 X 可被哈希,即不可變,反過來不可被哈希,即可變。
- 整數 i 在加 1 之后的 id 和之前不一樣,因此加完之后的這個 i (雖然名字沒變),但不是加之前的那個 i 了,因此整數是不可變類型。
- 列表 l 在附加 'Python' 之后的 id 和之前一樣,因此列表是可變類型。
- 數值、字符和元組 都能被哈希,因此它們是不可變類型。
- 列表、集合、字典不能被哈希,因此它是可變類型。
- 數值、字符和元組 都能被哈希,因此它們是不可變類型。
- 列表、集合、字典不能被哈希,因此它是可變類型。
2. 字典的定義
字典 是無序的 鍵:值(key:value)對集合,鍵必須是互不相同的(在同一個字典之內)。
- dict 內部存放的順序和 key 放入的順序是沒有關系的。
- dict 查找和插入的速度極快,不會隨著 key 的增加而增加,但是需要占用大量的內存。
字典 定義語法為 {元素1, 元素2, ..., 元素n}
- 其中每一個元素是一個「鍵值對」-- 鍵:值 (key:value)
- 關鍵點是「大括號 {}」,「逗號 ,」和「冒號 :」
- 大括號 -- 把所有元素綁在一起
- 逗號 -- 將每個鍵值對分開
- 冒號 -- 將鍵和值分開
3. 創建和訪問字典
4. 字典的內置方法
- dict.fromkeys(seq[, value]) 用于創建一個新字典,以序列 seq 中元素做字典的鍵,value 為字典所有鍵對應的初始值
- dict.keys()返回一個可迭代對象,可以使用 list() 來轉換為列表,列表為字典中的所有鍵。
- dict.values()返回一個迭代器,可以使用 list() 來轉換為列表,列表為字典中的所有值。
- dict.items()以列表返回可遍歷的 (鍵, 值) 元組數組。
- dict.get(key, default=None) 返回指定鍵的值,如果值不在字典中返回默認值。
- dict.setdefault(key, default=None)和get()方法 類似, 如果鍵不存在于字典中,將會添加鍵并將值設為默認值。
- key in dict in 操作符用于判斷鍵是否存在于字典中,如果鍵在字典 dict 里返回true,否則返回false。而not in操作符剛好相反,如果鍵在字典 dict 里返回false,否則返回true。
- dict.pop(key[,default])刪除字典給定鍵 key 所對應的值,返回值為被刪除的值。key 值必須給出。若key不存在,則返回 default 值。
- del dict[key] 刪除字典給定鍵 key 所對應的值。
- dict.popitem()隨機返回并刪除字典中的一對鍵和值,如果字典已經為空,卻調用了此方法,就報出KeyError異常。
- dict.clear()用于刪除字典內所有元素。
- dict.copy()返回一個字典的淺復制。
- dict.update(dict2)把字典參數 dict2 的 key:value對 更新到字典 dict 里。
總結
以上是生活随笔為你收集整理的字典对中文字符串进行排序 python_Python基础入门:字符串和字典的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 北京数字人民币红包怎么用 指定商户即可直
- 下一篇: word2013插入excel对象报错_