Python資料型別 字串

2021-06-27 20:08:43 字數 3312 閱讀 5750

字串:

1、 python 預設的檔案編碼都是ascii,所以要在編碼的時候加上coding=utf-8,中文才不會亂碼。

len 函式 是計算字串的長度。

正確編碼的長度。

b = '中文' , len(b) //長度是4

a = '中文'.decode('gbk')或utf-8

print len(a) // 長度是2

2、字串前加r 是不轉義字串

如:a = r"\n"  會是\n的字串,而不是空格

a = u"哈哈"不會轉義uncode。

3、字串替換

a = '123456789'

print a.replace('1','b')  把字串a中的1換成b

以為str是不可變的,所以不能用a[1] = a 這樣會報錯。

修改完成要在賦值給變數

4、字串拼接是+ (用6)用佔位符也可以拼接字串

a+b+c 這個很浪費效能的,因為python是不可變的,在相加的同時要建立兩個臨時物件,不推薦。

5、字串模板 % 佔位符。 (%s字串,%d數字)

print "my name is %s caida" % "ssss" ,可以在乙個字串中新增數字

print "my name is %s and %s hah "  % ('one','two') 多個佔位符的用元組,一 一對應的,用的比較多。

//字典替換方法

a = "this is %(name)s de %(who)s" %

print a

format方法 字串佔位符

//不寫東西預設順序

a = "this is {} de {}".format('my','you')

print a

//this is my de you

//可以調整前後的順序

a = "this is de ".format('my','you')

print a

//this is you de my

//直接指定詞

a = "this is de ".format(name='my',who='you')

print a

推薦format方法 的第三個方法(

直接指定詞)

使用模組替換字串模板。

import string 

s=string.template('$x,glorioux $x!')

x= s.substitute(x='ssss')

print x

d 是數字

f 是浮點數

s 是字串

6、優秀的字串拼接 join ***

a = '123456789'

b = 'aaaa'

c = '33afasfsf'

print ",".join([a,b,c])

//123456789,aaaa,33afasfsf

l = ['a','b','c']

s = ''.join(l)

print s

7、讀寫文字

w write  寫入

r read   唯讀

d = open('a.txt','w')

d.write('hi,\nseaond.')

d.close()

help(d) #檢視操作檔案的方法

d = open('a.txt','r')

print d.read(100)

d.seek(0)//游標返回0

python內建模組讀檔案

import linecache

#讀取檔案的第一行

print linecache.getline('a.txt',1)

lines  = linecache.getlines('a.txt')

print lines

#['hi,\n', 'seaond.\n']

print type(lines) #把每一行變成乙個list ,很好用

8、字串切片

a = 'c:\documents and settings\administrator.pc\.ssh'

print a[2:14]  從第二個提取,到第14個(1-14)

a = '123456789'

print a[1:9:3]

從第乙個元素到第1個,後面的3表示步長,就是間隔

字串也是乙個序列,也可以用序列操作。

9、字串三個引號的區別,''  " "  """ """

單,雙 都是,單行字串,

三個引號 是 多行字串,可以原格式輸出。

10 、字串查詢

a = "this is world"

print a.find('world')

print a[a.find('world'):] //返回找到的詞

成功返回開始位置,失敗返回-1

print help(a.find) //檢視方法

11、字串split  講字串分割成序列

兩種取出am的方法。

s = "i,am,lilei"

#print s[s.find('am'):s.find('am')+2]

print  s.split(',')[1]

s = 'aaadd,ddss,ff'

ss = s.split()

print ss

12 ,把string幫助文件寫入乙個檔案,用到標準輸出流

import string  

import sys

a = help(string)

d = open('string.txt','w')

sys.stdout = d

help(string)

d.close

13、strip 去除兩側的空格。

s = '8# '

print len(s.strip('# ')) # 去掉# 和空格

lstrip #去左  rstrip去右

14 、maketrans和translate

import string

a = 'assdfafd2123saf'

#替換規則是一一對應的,a==@ , s==!

g = string.maketrans('as','@!')

print a.translate(g,'2') #第二個引數是刪除,逐字刪除的

#@!!df@fd13!@f

#他和a.replace的區別是,replace是整體替換是替換as的

Python資料型別 字串型別

變數名 str 變數值 msg hello world print msg 0 print msg 1 msg hello n print len msg msg hello world print ello in msg print lo w not in msg res print hello ...

python資料型別(字串)

計算機人們日常事務的輔助工具,在程式設計中也映 現實世界的分類,因此計算機中也引入類別以便進行抽象分析 數字 字串 元組 列表 字典 int 表示的範圍 2,147,483,648 到 2,147,483,647 例如 0,100,100 num 2147483647 type num 一旦超出,則...

Python資料型別字串

字串就是一系列任意文字。python中的字串用單引號或者雙引號括起來,同時可以使用反斜槓 轉義特殊字元。單引號 和雙引號 本身只是一種表示方式,不是字串的一部分,因此,字串 hello 只有h,e,l,l,o這五個字元。例子 a sdsgf print type a str就是 string 2 如...