Python:字符串处理函数

split() / join() 拆分和组合

#split() 通过指定分隔符对字符串进行切片(拆分),默认空格符
lan = "python ruby c c++ swift"
lan.split()
#['python', 'ruby', 'c', 'c++', 'swift'] #传入符号','
todos = "download python, install, download ide, learn"
todos.split(', ')
#['download python', 'install', 'download ide', 'learn'] #把它们组合成字符串
','.join(['download python', 'install', 'download ide', 'learn'])
#'download python,install,download ide,learn'

replace() 替换

#replace() 第三个参数为代替几个
s = 'I like C. I like C++. I like Python'
s.replace('like', 'hate')
#'I hate C. I hate C++. I hate Python' s.replace('like', 'hate', 1)
#'I hate C. I like C++. I like Python'

布局center() : 前后留空 ljust():后面留空 rjust():前面留空

align = 'Learn how to align'
align.center(30)
#' Learn how to align ' align.ljust(30)
#'Learn how to align ' align.rjust(30)
#' Learn how to align' ralign = align.rjust(30)
ralign.strip()
#'Learn how to align'

eval(): 将字符串处理为可以运算的类型

# eval()

str1 = '1+2'
print(str1) #输出1+2 print(eval(str1)) #输出3

format() :格式化字符串  (New style in Python 3.6)

format(输出项,[,格式化字符串])

格式化输出 1)利用字符串格式化运算符%。 格式化字符串%(输出项1,输出项2....)

%% 百分号

%s 字符串

%c 字符

%d 带符号整数 (10进制)

%o 带符号整数 (8进制)

%x或者%X 带符号整数(16进制)

%e或者%E 浮点数字(科学计数法)

%f或者%F 浮点数字(带小数点)

%g或者%G 根据大小来选择

%e %f %*.*f %(项1,项2,输出项) 例如 %*.*f%(6,2,3.145) 等同 %6.2f%3.145

#格式化字符串的函数 str.format(),它增强了字符串格式化的功能。基本语法是通过 {} 和 : 来代替以前的 %
print('%s %s' % ('one', 'two'))
print('{} {}'.format('one', 'two'))
print('%d %d' % (1, 2))
print('{} {}'.format(1, 2))
#one two
#one two
#1 2
#1 2 print('{1} {0}'.format('one', 'two'))
#two one a = 5
b = 10
print(f'Five plus ten is {a + b} and not {2 * (a + b)}.')
#Five plus ten is 15 and not 30. '''
格式字符串还可以指定填充字符、对齐方式(其中<表示左对齐,>表示右对齐、^表示居中、==代表填充字符位于 符号和数字之间)、符号(其中+表示正号,-表示负号)
'''
>>>format(65,"c")
A
>>>print(format(3.145,"6.2f"))
3.15
>>>print(format(3.145,"-6.2f"))
3.15
>>>print(format(3.145,"+6.2f"))
+3.15
>>>print(format(3.145,"<6.2f"))
3.15
>>>print(format(3.145,">6.2f"))
3.15
>>>print(format(3.145,"><6.2f"))
3.15>>
>>>print(format(3.145,"<=6.2f"))
<<3.15
>>>print(format(3.145,"=6.2f"))
3.15
>>>print(format(3.145,"^6.2f"))
3.15
>><print(format(3.145,"0=+10"))
+00003.145

其他

#以下函数都是返回新的值,不影响原来的字符串
kk = "Python description: Python is a programming language that lets you work quickly and integrate systems more effectively." kk.startswith('Python')
#True kk.endswith('effectively.')
#True kk.find('language')
# #检测字符串是否由字母和数字组成
kk.isalnum()
#False kk.count("Python")
# #移除字符串头尾指定的字符(默认为空格或换行符)或字符序列
kk.strip('.')
#'Python description: Python is a programming language that lets you work quickly and integrate systems more effectively' kk.upper()
#'PYTHON DESCRIPTION: PYTHON IS A PROGRAMMING LANGUAGE THAT LETS YOU WORK QUICKLY AND INTEGRATE SYSTEMS MORE EFFECTIVELY.' kk.lower()
#'python description: python is a programming language that lets you work quickly and integrate systems more effectively.' kk.title()
#每个单词开头都大写
#'Python Description: Python Is A Programming Language That Lets You Work Quickly And Integrate Systems More Effectively.' kk.capitalize()
#首个单词开头大写,后面不大写
#Python description: python is a programming language that lets you work quickly and integrate systems more effectively. kk.swapcase()
#每个字母大小写调换
#pYTHON DESCRIPTION: pYTHON IS A PROGRAMMING LANGUAGE THAT LETS YOU WORK QUICKLY AND INTEGRATE SYSTEMS MORE EFFECTIVELY.

  

上一篇:【转】关于字符编码,你所需要知道的(ASCII,Unicode,Utf-8,GB2312…)


下一篇:Google C++命名规范