【python学习】从字符串中找出字符1的位置以及个数

给出任意字符串,获取字符串中某字符的位置以及出现的总次数。

可以使用函数enumerate来将字符串分离成位置和字符,然后进行比较即可。


#!/bin/env python
#-*- coding:utf-8 -*-
#
"""
    用enumerate将string中的1都找出来,
    用enumerate实现:
"""
def get_1_pos(string):
    onePos=[]
    try:
        onePos=list(((pos,int(val)) for pos,val in enumerate(string) if val == '1'))
    except:
        pass
    return onePos


def get_1_num(string):
    return len(list(get_1_pos(string)))


def get_char_pos(string,char):
    chPos=[]
    try:
        chPos=list(((pos,char) for pos,val in enumerate(string) if(val == char)))
    except:
        pass
    return chPos
def get_char_num(string,char):
    return len(list(get_char_pos(string,char)))


if(__name__ == "__main__"):
    str0="10101010101010101"
    str1="123abc123abc123abc"
    lt=get_1_pos(str0)
    print(lt)
    lt=get_1_pos(str1)
    print(lt)
    num=get_1_num(str0)
    print(num)
    lt=get_char_pos(str1,'1')
    print(lt)
    num=get_char_num(str1,'1')
    print(num)    
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值