python基础_类型_str

#python不用考虑变量,可随时变换,自动分配内存,比如a = 'jjj'后a = 123是可以的

#str 文本 字符串 

#常用函数

a = ' abcefg '

a.strip() #去掉前后的空格和各种分隔符换行符,结果是'abcefg'

a = '中国'

a #直接显示a编码,结果是'xe4xb8xadxe5x9bxbd'

a.decode(‘utf-8’) #解码,结果是u'u4e2du56fd'

a.encode('GBK') #编码,这个会报错的,UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position 0: ordinal not in range(128),应该是打出来的初始汉字编码是ascii,而ascii是没法编码成gbk,具体我也不是很清楚,如果大家有正确答案望告知,因此需要先转成可处理类型,下面这个就是

a.decode('utf-8').encode('GBK') #这样就可以了,结果是'xd6xd0xb9xfa',这个通常会用在转码的时候,比如下面这个例子

file_read = open('a.txt','r') #读取a.txt内容,‘r'是只读方式,a.txt的内容: '老师:你有十颗糖,我吃了五颗,还剩几颗? 小明:五颗 老师:我再吃两颗呢? 小明:你他妈再吃一颗试试! 老师:滚出去!!'

file_write = open('b.txt','w') #’w'是写入方式,就是只能写不能读,上面只能读不能写

#上面a.txt内容叽里哇啦的是不是没看懂?没关系

print '老师:你有十颗糖,我吃了五颗,还剩几颗? 小明:五颗 老师:我再吃两颗呢? 小明:你他妈再吃一颗试试! 老师:滚出去!!' #就是这玩意

for val in file_open: #读取了叽里哇啦的每一行,把每一行迭代给val,什么叫爹带?迭代就是我有一包十颗糖(file_open),每次给你一颗(val),你把糖砸碎或者吃了、扔出去随便你(print val、val.decode('utf-8')、val[1:]这个是切片以后说.....)

  print val #打印val,这个因为是迭代内的,所以要缩进,为啥缩进呢,这个就像交税,是必须的,注意:缩进符要统一,比如缩进是两个空格,那整个脚本里就都得用两个空格,一个空格一个tab就会报错

  file_out.write(val.decode('utf-8').encode('gbk')) #把val转码写到b.txt里

file_read.close() #文件用完了记得关了,和windows的编辑器点x是一样的

file_write.close() #文件用完了记得关了

a = '1,2,3,4'

a.split(',') #用逗号作为分隔符把a转成list,啥么叫list?看结果啊!,结果是['1', '2', '3', '4']

a = 'abc'

a.upper() #转大写,结果是‘ABC’,这个可牛逼了,通用的,excel也是这个upper(A1)

a = 'ABC'

a.lower() #转小写,结果是‘abc’,一样犀利

a.replace('A','D') #替换,A替换D,结果是‘DBC’

a.count('A') #百度去

a.find('A') #看A是不是在a里,一般没人这么搞,都用'A' in a

原文地址:https://www.cnblogs.com/xiu123/p/8213526.html