首頁  >  文章  >  後端開發  >  Python字串與字典相關操作的詳解

Python字串與字典相關操作的詳解

黄舟
黄舟原創
2017-09-23 10:41:571543瀏覽

這篇文章主要介紹了Python字串和字典相關操作的實例詳解的相關資料,這裡提供實例幫助大家學習理解這部分內容,需要的朋友可以參考下

Python字串和字典相關操作的實例詳解

字串運算:

#字串的% 格式化運算:


#
str = "Hello,%s.%s enough for ya ?"
values = ('world','hot')
print str % values

輸出結果:


#
 Hello,world.hot enough for ya ?

範本字串:


##

#coding=utf-8
from string import Template
## 单个变量替换
s1 = Template('$x, glorious $x!')
print s1.substitute(x = 'slurm')

## 美元符号表示以及单个变量的替换
s2 = Template("Make $$ selling $x!")
print s2.substitute(x = 'slurm')

## 字段变量的替换
s3 = Template('A $thing must never $action .')
d = {}
d['thing'] = 'gentleman'
d['action'] = 'show his socks'
print s3.substitute(d)

ps:safe_substitute 不会因缺少值或者不正确使用$字符而出错。

字串格式化類型:

(1) %字元:標記轉換說明符的開始,就是開始替換。

(2) -表示左對齊,+表示在轉換值之前加上正負號。 0表示轉換值位數不夠則用0填滿。
(3) * 可以指定最小欄位寬度。
(4) 點(.)後面跟上精度值。

字串方法:

(1)find:可以在較長的字串中尋找子字串,傳回子字串所在位置的最左端索引。如果沒有找到則回傳-1.


print 'With a moo-moo here, and a moo-moo there'.find('moo')
返回:7

(2)join方法:將字串拼接起來。


print '/'.join((' ','usr','bin','env'))
输出: /usr/bin/env
ps:和谷歌的guava有点像。

(3)lower方法: 傳回字串的小寫字母版。


print 'AK47'.lower()
输出:ak47

(4)replace方法:傳回某字串的所有符合項目均被取代之後的得到的字串。


'This is a test'.replace('is','ezz')
输出:Thezz ezz a test

(5)split方法:join的逆方法,將字串分隔成序列。


print '1+2+3+4+5'.split('+')
输出:['1', '2', '3', '4', '5']

(6)strip方法:移除兩邊的字串,預設是空格字串,也可以指定對應的字串。


ps:另外可以参加lstrip和rstrip方法。

(7)translate方法:和 replace 方法一樣,可以取代字串中某些部分,但是和前者不同的是,translate方法只處理單一字元。它的優點在於可以同時進行多個替換,有些時候比replace效率高的還要多。


ps:maketrans方法和translate方法类似。

字典的基本運算:

#(1) dict方法:用來建構字典資料。


dict(name='Gumby',age=42)
dict([('name','Gumby'),('age',42)])
ps:都是构造字段的方法。

(2) 字典基本運算:

#1. len(d) 傳回d中項(鍵值)的數量。

2. d[k]傳回關聯到鍵k上的值。
3. d[k]=v 將值v關聯到鍵k上。
4. del d[k] 刪除鍵為k的項。
5. k in d 檢查d中是否含有鍵為k的項。

(3) copy 方法傳回一個具有相同鍵值對的新字典。

(4) fromkeys:方法使用給定的鍵建立新的字典,每個鍵對應的值為None。


print {}.fromkeys(['name','age'])
输出:{'age': None, 'name': None}

(5) get方法:get方法是更寬鬆的字典項目方法。


d = {}
d['name'] 如此访问时会报错。
d.get('name')访问时,如果不存在会返回None。

(6) haskey: haskey方法可以檢查字典中是否含有給出的鍵。 d.has_key(k) 相當於 k in d。

(7) items和iteritems方法:


items方法会将字典按照键值元组列表的形式返回,但没有顺序。
iteritems和items类似,但是返回的是迭代器。

(8) keys和iterkeys和item類似,這個是傳回key的列表或是迭代器。

(9) values方法以列表形式傳回字典中的值,和keys或iterkeys不同的是,傳回的值可以包含重複值。

(10) update方法可以用一個字典來更新另一個字典。

以上是Python字串與字典相關操作的詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn