python统计字母a的个数

编程入门 行业动态 更新时间:2024-10-11 21:31:16

python统计<a href=https://www.elefans.com/category/jswz/34/1765130.html style=字母a的个数"/>

python统计字母a的个数

字符串读取:

names=['NJ','JS','SZ','BJ','JS','LYG','JS','GZ','TG','nj','1','#']print(names[1:2])print(names[4])print(names[::2])#  每隔两个元素,获取一个print(names[1:-1])print(names[-1:1])print(names[1][0])

运行结果:

['JS']

JS

['NJ', 'SZ', 'JS', 'JS', 'TG', '1']

['JS', 'SZ', 'BJ', 'JS', 'LYG', 'JS', 'GZ', 'TG', 'nj', '1']

[]

J

追加&复制&统计&合并

names=['NJ','JS','SZ','BJ','JS','LYG','JS','GZ','TG','nj','1','#']

names.append(['123','456'])#追加,默认追加到列表最后面print(names)#names.clear()names_copy=names.copy()#复制一份列表print(names_copy)print(names.count('JS'))#统计字符串个数names.extend(['111','222'])#追加,合并列表print(names)

运行结果:

['NJ', 'JS', 'SZ', 'BJ', 'JS', 'LYG', 'JS', 'GZ', 'TG', 'nj', '1', '#', ['123', '456']]

['NJ', 'JS', 'SZ', 'BJ', 'JS', 'LYG', 'JS', 'GZ', 'TG', 'nj', '1', '#', ['123', '456']]

3

['NJ', 'JS', 'SZ', 'BJ', 'JS', 'LYG', 'JS', 'GZ', 'TG', 'nj', '1', '#', ['123', '456'], '111', '222']

插入&索引&反转&排序

names.insert(2,'b')#把字符b插入到列表里,1是插入的位置print(names)print(names.index('LYG'))#打印LYG的下标print(names.pop())#默认删除最后一个print(names.pop(2))#指定删除位置,并打印删除的字符names.reverse()#反转列表print(names)names.remove(['123','456'])#移除print(names)names.sort()#给列表排序gprint(names)

运行结果:

['NJ', 'JS', 'b', 'SZ', 'BJ', 'JS', 'LYG', 'JS', 'GZ', 'TG', 'nj', '1', '#', ['123', '456'], '111', '222']

6

222

b

['111', ['123', '456'], '#', '1', 'nj', 'TG', 'GZ', 'JS', 'LYG', 'JS', 'BJ', 'SZ', 'JS', 'NJ']

['111', '#', '1', 'nj', 'TG', 'GZ', 'JS', 'LYG', 'JS', 'BJ', 'SZ', 'JS', 'NJ']

['#', '1', '111', 'BJ', 'GZ', 'JS', 'JS', 'JS', 'LYG', 'NJ', 'SZ', 'TG', 'nj']

拷贝番外篇:

1、copy模块

importcopy#运用模块list_copy=['11','22','33','44',['Shenzhen',['11','22'],'Guangzhou','Changsha'],'55','66']print(list_copy)list_deep=copy.deepcopy(list_copy)#深copy(看下面注解)list2=copy.copy(list_copy)#浅copy(看下面注解)list_copy[4][1][0]='aa'list_copy[2]='cc'print(list_copy)print(list_deep)print(list2)

运行结果:

['11', '22', '33', '44', ['Shenzhen', ['11', '22'], 'Guangzhou', 'Changsha'], '55', '66']#原始数据

['11', '22','cc','44', ['Shenzhen', ['aa','22'], 'Guangzhou', 'Changsha'], '55', '66']

['11', '22','33','44', ['Shenzhen', ['11','22'], 'Guangzhou', 'Changsha'], '55', '66']#deepcopy结果

['11', '22','33','44', ['Shenzhen', ['aa','22'], 'Guangzhou', 'Changsha'], '55', '66']#浅copy结果

2、copy()list_copy=['11','22','33','44',['Shenzhen',['11','22'],'Guangzhou','Changsha'],'55','66']list1=list_copy.copy()print(list1)list_copy[4][1][0]='aa'list_copy[2]='cc'print(list_copy)print(list1)

运行结果:

['11', '22','33', '44', ['Shenzhen', ['11', '22'], 'Guangzhou', 'Changsha'], '55', '66']

['11', '22','cc','44', ['Shenzhen', ['aa','22'], 'Guangzhou', 'Changsha'], '55', '66']

['11', '22','33','44', ['Shenzhen',['aa', '22'], 'Guangzhou', 'Changsha'], '55', '66']

注:

深copy与浅copy

共同点:不会因为列表的父层变动而变动

不同点:子列表修改时,浅copy会跟随变动而变动,而深copy不会变动。

extent()函数与append()函数区别注:def是 python的函数,后面会介绍。defchangeextent(str):'Please string with extent'info.extend(['40','50','60']print('extent>>>',info)returndefchangeappend(str):'Please string with append'info.append(['70','80','90']print('append>>>',info)returninfo= ['10','20','30']changeappend(info)print('Please append str',info)changeextent(info)print('Please extent str',info)

运行结果:

append>>> ['10', '20', '30', ['70', '80', '90']]

Please append str ['10', '20', '30', ['70', '80', '90']]

extent>>> ['10', '20', '30', ['70', '80', '90'], '40', '50', '60']

Please extent str ['10', '20', '30', ['70', '80', '90'], '40', '50', '60']

结论:

1.列表可以包含任何数据类型的元素,单个列表中的元素无须全为同一个类型

2.append()函数只在尾部追加

3.列表是以类的形式实现的。“创建”列表实际上是将一个类实例化。因此,列表有多种方法可以操作。extent()方法只接受一个列表作为参数,并将该参数的每个元素都添加到原有的列表中。

字符串常用操作:

#字符串常用操作list='abccd'lis='!!'print(list.count('C'))#统计字符print(list.capitalize())#首字母大写等同于print('abc'.title())

print(list.center(50,'-'))# 保持字符串在中心位置,不够的用(-)补足。# list.encode() 指定编码格式编码字符串print(list.endswith(lis))#用于判断字符串是否有指定后缀结尾,如果有则返回True,否则Falselist_t='aaa\tbbbcccddd'print('原始str:',list_t)#print('替换\\t:'+ list_t.expandtabs())#把字符串里面\t转换为空格print('用10空格替换\\t:'+ list_t.expandtabs(tabsize=10))#将Tab键,转换为10个空格print(list_t.find('a'))#查找字符所在位置(查下标)print('网名:{name},网址:{url}'.format(name='baidu',url='http:///www.baidu'))#格式化字符串,作用等同于%,不过format部分类型,操作更简单。# 推荐使用,这里就不细讲了,后面会补充格式化字符串相关博客'''list_t.format_map() #有兴趣的自己查阅资料list_t.index() # 检测是否包含子字符串str,如果指定beg(开始)和end(结束)范围,则检查是否包含在指定范围内,该方法与find()方法一样,只不过str不在string会报错list_t.isdigit() #检查字符串为整数则返回 真。list_t.isidentifier() #判断呢是不是一个合法的标示符。了解即可list_t.isalnum() #检测字符串是否由字母和数字组成,True&Falselist_t.isalpha() #检测字符串是否由字母组成,True&Falselist_t.isdecimal()#检测字符串是否只包含十进制字符。这种方法只存在与unicode对象,True&Falselist_t.isnumeric() #检测字符串是否由数字组成。这种方法只存在与unicode对象,True&Falselist_t.isprintable() #list_t.isspace() #检测字符串是否由空白字符组成 True&Falselist_t.istitle()#检查字符串是否首写字母为大写,其他为小写  True&Falselist_t.islower() #检测字符串是否由小写字母组成 True&Falselist_t.isupper() #检测字符串是否由大写字母组成 True&False'''

运行结果:

0

Abccd

----------------------abccd-----------------------

False

原始str: aaabbbcccddd

替换 \t:aaa     bbbcccddd

用10空格替换\t:aaa       bbbcccddd

0

list_t=('a','b','c')print('+'.join(list_t))#通过指定字符链接序列中元素后生成新的字符串

运行结果:

a+b+c

#.maketrans() #用于创建字符映射的转换表,对于接受的两个参数的最简单调用方式,第一个参数为字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。#语法:maketrans()方法语法:str.maketrans(intab, outtab)参数intab -- 字符串中要替代的字符组成的字符串。outtab -- 相应的映射字符的字符串。

#两个字符长度一致,必须一一对应。

intab1 ="aeiou"outtab1 ="12345"trantab1 =str.maketrans(intab1, outtab1)str ="this is string example....wow!!!"print(str.translate(trantab1))

运行结果:

th3s 3s str3ng 2x1mpl2....w4w!!!

translate() 方法根据参数table给出的表(包含256个字符)转换字符串的字符,要过滤掉的字符放到 deletechars 参数中。

语法translate()方法语法:str.translate(table[, deletechars]);bytes.translate(table[, delete])bytearray.translate(table[, delete])参数table -- 翻译表,翻译表是通过 maketrans() 方法转换而来。deletechars -- 字符串中要过滤的字符列表。返回值返回翻译后的字符串,若给出了 delete 参数,则将原来的bytes中的属于delete的字符删除,剩下的字符要按照table中给出的映射来进行映射 。

字符串补位:

list_t='abc'print(list_t.ljust(10,'*'))#保证字符串长度为10,不够用*号补位,补在字符串后面print(list_t.rjust(10,'*'))#保证字符串长度为10,不够用*号补位,补在字符串前面

运行结果:

abc*******

*******abc

字符串大小写:

list_t='abc'list_l='EDC'print(list_l.lower())#字符串大写变小写print(list_t.upper())#字符串小写变大写

运行结果:

edc

ABC

移除字符:(strip 用于移除字符串两边的字符,默认移除空格)

str ="*****this is string example....wow!!!*****"print(str.strip('*'))#去掉两边 *号字符print(str.lstrip('*'))#去掉左边 *号字符print(str.rstrip('*'))#去掉右边 *号字符

运行结果:

this is string example....wow!!!

this is string example....wow!!!*****

*****this is string example....wow!!!

切片:

print('ALex Li'.rfind('L'))# 与find相反,已右边第一个为准输出下标print('1=2=3=4'.split('='))#通过指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串print('abc'.title())#首字母大写print('Ab'.swapcase())#字母大小,反写。 大的变小,小的变大

运行结果:

5

['1', '2', '3', '4']

Abc

aB

替换:

print('Alex li'.replace('l','L',1))#替换字符。把l替换成L。默认替换所有,后面可以指定替换个数。

运行结果:

ALex li

'''.splitlines() 按照行('\r', '\r\n',\n')分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符.startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False。如果参数 beg 和 end 指定值,则在指定范围内检查。.rindex() 返回子字符串 str 在字符串中最后出现的位置,如果没有匹配的字符串会报异常,你可以指定可选参数[beg:end]设置查找的区间。.replace() #replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。.zfill() # zfill() 方法返回指定长度的字符串,原字符串右对齐,前面填充0。'''

更多推荐

python统计字母a的个数

本文发布于:2024-03-04 14:20:45,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1709502.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:字母   个数   python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!