2018-12-26
今天是我正式學習python的第二天,也是我準備用部落格來記錄我學習歷程的第一天。希望可以堅持下去,並且真正學到一些東西。
a = "2"b = "②"
c = "二"
v1 =a.isdecimal()
v2 =a.isdigit()
v3 =a.isnumeric()
v4 =b.isdecimal()
v5 =b.isdigit()
v6 =b.isnumeric()
v7 =c.isdecimal()
v8 =c.isdigit()
v9 =c.isnumeric()
(a,v1,v2,v3)
(b,v4,v5,v6)
print(c,v7,v8,v9)
2true true true② false true true
二 false false true
由上圖可見,str.isnumeric()的可適用範圍最廣。
a = "wcblyn
"print(a.casefold()) #
字串轉變為對應的小寫,不止英文
print(a.swapcase()) #
將大小寫互換
print(a.upper()) #
全部轉換為大寫
print(a.lower()) #
全部轉換為小寫
print(a.title()) #
首字母大寫,其他小寫
print(a.isupper()) #
判斷是否為大寫
print(a.islower()) #
判斷是否為小寫
print(a.istitle()) #
判斷是否為首字母大寫
結果依次為:
wcblyn
wcblyn
wcblyn
wcblyn
wcblyn
false
false
false
a = "wcblynwcblynwcblyn
"v = a.find("
c",0,2)
v1 = a.find("c"
)v2 = a.find("
c",0,1)
print(v,v1,v2) #
顯示字串中第一次出現此字元的位置,也可限定開始和結束的區間,左閉右開,查詢失敗返回-1
結果依次為:
1 -1 -1
a = "i am ,age
"v = a.format(name = "
wcb",b = 21)
v1 = a.format_map()
(v)print(v1) #
格式化,將乙個字串中的佔位符替換為指定的值,按順序填入
結果為:
i am wcb,age21
i am lyn,age21
a = "lynwcb
"b = "
123456
"v = "
456 love 123
"m = str.maketrans(b,a) #
將兩個參照的字串一一對應起來
v1 = v.translate(m) #
轉換print
(v1)
結果為:
wcb love lyn
a = "lynwcb596922596922
"v1 = a.replace("
wc","
love")
v2 = a.replace("
w","
love")
v3 = a.replace("
wc","o"
)v4 = a.replace("
2","o"
)v5 = a.replace("
2","
o",2) #
可通過新增引數選擇替換前n個
(v1)
(v2)
(v3)
(v4)
(v5)
結果依次為:
lynloveb596922596922
lynlovecb596922596922
lynob596922596922
lynwcb5969oo5969oo
lynwcb5969oo596922
p = "lynwcblynwcb
"v = p.strip("
wcbly")
(v)結果為:
nwcblyn
這個功能讓我很困惑,目前還沒搞懂是什麼原理
a = "_"v = "
lynwcb596922
"v1 =a.join(v)
(v1)
結果為:
l_y_n_w_c_b_5_9_6_9_2_2
#在兩個字元之間加入,前後沒有
a = "lynwcb596922lynwcb596922
"print(a.partition("wc"
))print(a.rpartition("
wc")) #
結果為:('
lyn', '
wc', '
b596922lynwcb596922')
('lynwcb596922lyn
', '
wc', '
b596922
')
a = "lynwcb596922lynwcb596922
"print(a.split("cb"
))print(a.split("
cb",1)) #
其本身取不到.可定引數,確定分幾次
print(a.rsplit("
cb",1))
結果為:['
lynw
', '
596922lynw
', '
596922']
['lynw
', '
596922lynwcb596922']
['lynwcb596922lynw
', '
596922
']
可應用於整數加法計算器
value = "5 + 9
"v1,v2 = value.split("+"
)print(int(v1)+int(v2))
a = "name\tage\tgender\nwcb\t21\tmale\nlyn\t21\tfemale
"print(a.expandtabs(20)) #
20個為一組,若遇到\t,自動補滿20
結果為:
name age gender
wcb 21male
lyn 21 female
v = range(0,100,5) #左閉右開 0<=x<100
for i in
v:
print(i)
a = "lynwcb
"v = a.center(20,"*"
)
(v)結果為:
*******lynwcb*******
2018-12-27 09:21:21 正式完成第一次的整合,拖的時間有點長,今天要抓緊整理,加快程序。
PHP 第二天 字串
可以使用單引號或雙引號來表示 引起來 表示一串 連續的字元 最短的字串是 空字串 比如 str1 注意 這個不是空字串 因為其中包括了1個空格字元。name 張三 edu 北京大學 v1 這也是字串 空字串 跟null不同!v2 123 這還是字串 v3 false 這仍然是字串 特別注意 雙引號字...
第二天 確定字元互異
題目出自程式設計師面試金典。看到這道題直接跳出來了兩個想法 1.暴力不是很複雜 2.hash map之流的 違反題目要求 習慣性先寫了暴力方法 內心os 竟然沒有超過時間 class different return true 點評 時間複雜度不能看,而且沒用到string的特性,呼叫對應函式會更漂...
遇見go語言的第二天 字串 時間
字串常用的系統函式 str hello北京 fmt.println str len len str r rune str for i 0 i len r i n,err strconv.atoi 123 nil表示無值,任何變數在沒有被賦值之前的值都為nil,對於真假判斷,只有nil與false 0...