#!/usr/bin/env python
#-*- coding: utf-8 -*-
print '''建立字串'''
str1 = 'learn python'
print str1,str1[0],str1[-1] #輸出整個字串,第乙個字元,最後乙個字元
print str1[:6] #切片
# result:learn
# result:learn python l n
# str1[0] = 'h' 程式報錯,不允許修改字串
print '-'*70
print '"hello,my name is mike"' #當字串中雙引號,最好用單引號建立
# result:"hello,my name is mike"
print 'doesn\'t' #如果用單引號建立有單引號的字串,字串中的單引號前加上\
# result:doesn't
print '-'*70
str2 = '''python具有豐富和強大的庫。它常被暱稱為膠水語言,
能夠把用其他語言製作的各種模組(尤其是c/c++)很輕鬆地聯結在一起。
常見的一種應用情形是,使用python快速生成程式的原型(有時甚至是程式的最終介面),
然後對其中[2] 有特別要求的部分,用更合適的語言改寫。
'''print str2
str3 = '''python具有豐富和強大的庫。它常被暱稱為膠水語言,\
能夠把用其他語言製作的各種模組(尤其是c/c++)很輕鬆地聯結在一起。
常見的一種應用情形是,使用python快速生成程式的原型(有時甚至是程式的最終介面),\
然後對其中[2] 有特別要求的部分,用更合適的語言改寫。\
'''print str3
# 輸出太長這裡就不展示了,請讀者動手執行感受str2與str3的不同
print '-'*70
print 'e:\note\python.doc' #\n會被當作換號符處理
# result:e:
# ote\python.doc
print r'e:\note\python.doc' #字串前加r,所以特殊字元失效
# result:e:\note\python.doc
print '-'*70
str4 = 'string\t'
str5 = 'is powerful'
str4 = str4+str5
# 不會報錯,實際上這不是修改str4,而是先消去現有的str4,再用'+'返回的新的合併後的字串去重新建立str4
print str4
# result:string is powerful
print '-'*70
a_tuple = (2,'on')
print format_str1 % a_tuple
print format_str2 # 這是另一種寫法,更簡便
print '-'*70
print '''字串方法'''
str6 = "zootopia"
print str6.find('to')# 返回第乙個to的索引,注意str6[3]='t',str6[4]='o'
# result:3
print '-'*70
str6_2 = "z o o t o p i a"
print str6_2.split() # 利用空格符分隔開字元
# result: ['z', 'o', 'o', 't', 'o', 'p', 'i', 'a']
print ''.join(str6_2.split()) # 再通過join函式又可以還原
# result: zootopia
print '-'*70
str7 = '54321'
print '>'.join(str7) # 上乙個例子是列表的join,這個是字串的join,功能類似
# result: 5>4>3>2>1
print '-'*70
str8 = '"yes!",i answered.'
print str8.split(',')# split()可以指定乙個字元作為分隔符
# result:['"yes!"', 'i answered.']
# 如果想把多個字元作為分隔符,可用下面這個方法
sep=['!',',','.','"']
for i in sep:
str8 = str8.replace(i,' ')# 將全部分隔符替換為空格
print str8.split() # 成功提取句子中的所有單詞
# result:['yes', 'i', 'answered']
print '-'*70
print str9.count('a') #注意區分大小寫
# result: 1
str9 = str9.lower()
print str9.count('a')
# result: 2
print '-'*70
str10 = '12345'
print str10.isalnum()
# result: true
print '-'*70
print '''unicode字串'''
unicode_str = u'\u4f60\u597d'
print unicode_str #"你好"的unicode編碼
# result: 你好
utf8_str = unicode_str.encode('utf-8')
print utf8_str
# 注意'你好'的utf-8編碼為'\xe4\xbd\xa0\xe5\xa5\xbd'(在python shell中直接輸入utf8_str會顯示這個編碼),
# 但是print()函式不會自動解碼,所以直接輸出為亂碼
print utf8_str.decode('utf-8')
# result: 你好
print unicode(utf8_str,'utf-8') #這兩種方法一樣
# result: 你好
python常見字串操作
str hello world print str.upper 把所有字元中的小寫字母轉換成大寫字母 print str.lower 把所有字元中的大寫字母轉換成小寫字母 print str.capitalize 把第乙個字母轉化為大寫字母,其餘小寫 print str.title 把每個單詞的第乙...
python常見字串操作
附 python2.x和python3.x中raw input 和input 區別 備註 1 在python2.x中raw input 和input 兩個函式都存在,其中區別為 raw input 將所有輸入作為字串看待,返回字串型別 input 只能接收 數字 的輸入,在對待純數字輸入時具有自己的...
python常見字串方法
字串.isalnum 所有字元都是數字或者字母,為真返回 ture,否則返回 false。字串.isalpha 所有字元都是字母,為真返回 ture,否則返回 false。字串.isdigit 所有字元都是數字,為真返回 ture,否則返回 false。字串.islower 所有字元都是小寫,為真返...