• Python之str型转成int型


    str转int:

    1 def fn(x,y):
    2     return x*10+y
    3 
    4 def char2num(s):
    5     return {'0':0, '1':1, '2':2, '3':3, '4':4, '5':5, '6':6, '7':7, '8':8, '9':9}[s]  # 特别注意这里,后面还有个 [s]
    6 
    7 print(type(reduce(fn, map(char2num, '1738785'))))
    8 print(reduce(fn, map(char2num, '1738785')))

    输出如下:

    1 <type 'int'>
    2 1738785

    整理成一个 str2int 函数就是如下喽:

     1 from functools import reduce
     2 
     3 def str2int(s):
     4     def fn(x,y):
     5         return x*10+y
     6     def char2num(s):
     7         return {'0':0, '1':1, '2':2, '3':3, '4':4, '5':5, '6':6, '7':7, '8':8, '9':9}[s]
     8     return reduce(fn,map(char2num,s))
     9 
    10 print(str2int('365779'))
    11 print(type(str2int('365779')))

    用匿名函数lambda再简化一下就成了下面这个样子:

    1 def str2int(s):
    2     return reduce(lambda x,y:x*10+y, map(lambda s:{'0':0, '1':1, '2':2, '3':3, '4':4, '5':5, '6':6, '7':7, '8':8, '9':9}[s], s))

    WOC,就一行代码哦,够简单!

  • 相关阅读:
    代码示例_触摸屏驱动
    代码示例_中断下半部
    代码示例_mmap的实现
    代码示例_阻塞IO
    代码示例_LCD控制
    代码示例_平台总线
    驱动_I2c驱动框架
    驱动_Input输入子系统
    Windows切换桌面或窗口快捷键
    几何分布
  • 原文地址:https://www.cnblogs.com/fallenmoon/p/7200947.html
Copyright © 2020-2023  润新知