find()函数方法和str转换int

find() 

#find()函数用法
#str.find(str,beg=0,end = len(string))
#str-指定检索的字符串
#beg-开始索引,默认为0
#end-结束索引,默认为字符串长度
info ='abca'
print (info.find('a'))#0,默认从索引0开始查找第一个字符串'a',返回下标
print (info.find('a',1))#3,从索引1开始查找第一个字符串'a',返回下标
print (info.find('1'))#-1,查找不到,返回-1
print (info.find('a',1,3))#-1,从索引1开始查找,到索引3结束(不包括)

 str-->int

#str-->int
from functools import reduce

def char2num(s): #创建字符串转换成值的映射

    digits = {'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}
    
    return digits[s]
    
def str2int(s):#字符串转换方法

    if s.find('.')==-1:#不是浮点数
    
        return reduce (lambda x,y:10*x+y,map(char2num,s))
        
    else: #浮点数
    
        s1 = s.split('.')
        
        s2int = reduce(lambda x,y:10*x+y,map(char2num,s1[0])) #取整数
        
        s2float = reduce(lambda x,y:10*x+y,map(char2num,s1[1]))*10**(-len(s1[1]))#取小数部分
        
        return s2int+s2float
s = '0.1234'  

print (str2int(s))    
 

 

转载于:https://my.oschina.net/u/3786144/blog/1649728

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值