a = "aAsmr3idd4bgs7Dlsf9eAF"
请将a字符串的数字取出,并输出成一个新的字符串。
请统计a字符串出现的每个字母的出现次数(忽略大小写,a与A是同一个字母),并输出成一个字典。 例 {'a':3,'b':1}
请去除a字符串多次出现的字母,仅留最先出现的一个,大小写不敏感。
例 :'aAsmr3idd4bgs7Dlsf9eAF',经过去除后,输出 'asmr3id4bg7lf9e'
a="aAsmr3idd4bgs7Dlsf9eAF"
def fun1_2(x):#1&2
x=x.lower()#大小写转换
num=[]
dic={}
for i in x:
if i.isdigit():#判断如果为数字,请将a字符串的数字取出,并输出一个新的字符串
num.append(i)
else:#2请统计a字符串出现每个字母的出现次数(忽视大小写),并输出一个字典。例:{'a':3,'b':1}
if i in dic:
continue
else:
dic=x.count(i)
new=''.join(num)
print"the new numbers string is:"+new
print"the dictionary is:%s"%dic
fun1_2(a)
def fun3(x):
x=x.lower()
new3=[]
for i in x:
if i in new3:
continue
else:
new3.append(i)
print''.join(new3)
fun3(a)
printf函数使用注意事项
1、域宽
%d:按整型数据的实际长度输出。
如果想输出指定宽度可以指定域宽,%md-->m域宽,打印出来以后,在控制台上,显示m位;
如果要打印的数的位数如果超过我们设定m则原样输出;
如果要打印的数的位数如果小于设定的位数,则补空白,具体如下:
如果m为正数,则左对齐(左侧补空白);
如果m为负数,则右对齐(右侧补空白)。
2、转义字符
如果想输出字符"%",则应该在“格式控制”字符串中用连续两个%表示。
如:printf("%f%%",1.0/3);输出结果:0.333333%。
#!/usr/bin/python
# -*- coding:utf-8 -*-
# @File : Statistics.py
"""
统计字符串中大写的字母、小写的字母、数字及其他字符的个数,以字典形式返回
"""
def statistic_string(ostr):
"""
统计字符串中大写的字母、小写的字母、数字及其他字符的个数,以字典形式返回
"""
uppers = 0
lowers = 0
digits = 0
others = 0
odict = {}
for istr in ostr:
if istr.isupper():
uppers += 1
elif istr.islower():
lowers += 1
elif istr.isdigit():
digits += 1
else:
others += 1
else:
odict.setdefault('uppers', uppers)
odict.setdefault('lowers', lowers)
odict.setdefault('digits', digits)
odict.setdefault('others', others)
return odict
if __name__ == '__main__':
astr = raw_input(u'请输入一个字符串:')
print statistic_string(astr)