python处理字符串:将字符串中的数字相加求和

计算字符串中所有数字的和,字符串中有数字和字母组合而成如果出现连续数字,按照一个数操作具体解释在代码行里:
def sum_str(str1):
    len1=len(str1)     #首先将字符串str1的长度赋值给len1
    sum = n = 0            #建立一个值为0的空变量sun          #建立一个值为0的空变量n
    for i in range(len1):               #用i来遍历字符串的长度
        if 49 <= ord(str1[i]) <= 57:    #判断字符ascii码是否在数字ascii值范围内
            n = n * 10          #n *= 10
            n = int(str1[i]) + n   #n += int(str1[i])
        else:
            sum = n + sum   #sum += n
            n = 0
        # 上面6行代码的意思是从0下标开始,遍历字符串,如果是数字,用n加上其数字,
        #执行逻辑是,碰见一个数字,用n加上,如果下一个还是数字,就将上一个数字乘10加这个数字,依次循环
        #比如:连续数字df123asd = ((1*10+2)*10)+3
        #如果不是数字,就将n值加到变量sum中,保存,并且将n重新赋值为0,再次进入for循环,(sun只在碰见字母的时候出现,把数字之前的数字的值收集起来)
        # 下次再碰到数字(满足if条件),循环(if)条件下面的逻辑
    sum = n +sum
    print(sum)
str1 = "b532x2x3c4b5"
sum_str(str1)     #调用函数

运行结果:

原文地址:https://www.cnblogs.com/ilovezzh/p/9380155.html

时间: 2024-08-29 09:38:40

python处理字符串:将字符串中的数字相加求和的相关文章

字符串问题之 字符串中的数字子串求和

要求 1. 忽略小数点 如 A1.3 包含的是两个数字 1 和 3 2.紧贴数字子串的左侧出现字符"-"   连续次数为奇数时候 为负数 , 偶数时候为正数. 比如: "A-1BC--12"   其中包含数字为-1 和 12 str="A1CD2E33"  返回36 str="A-1B-2C--D6E"  返回7 这个题目的实现方法有很多种,下面我来给大家演示一种哈~~~~~ 这个题目就是实现 如何从左到右遍历str时,准确收

1到10所有数字相加求和

#!/bin/bashi=1sum=0while [ $i -le 10 ]do    sum=$[$sum+$i]    i=$[$i+1]done echo $sum

java:从命令行接收多个数字,求和之后输出结果

设计思路:获取输入数的个数,然后将要相加的数字转换成浮点型进行相加,然后输出结果. 流程图: 1:建立一个Scanner的对象scan: 2:定义一个动态数组aDoubleArray[]: 3:利用循环结构将数字输入到数组中: 4:在利用循环结构将数组中的数字相加在输出. 源代码: package niuke; import java.util.Scanner; public class add { public static void main(String[] args) { Scanner

python(15)提取字符串中的数字

python 提取一段字符串中去数字 ss = “123ab45” 方法一:filter filter(str.isdigit, ss) 别处copy的filter的用法: # one>>> filter(str.isdigit, '123ab45')'12345' #twodef not_empty(s): return s and s.strip() filter(not_empty, ['A', '', 'B', None, 'C', ' ']) # 结果: ['A', 'B',

Python3中字符串中的数字提取方法

逛到一个有意思的博客http://cuiqingcai.com/category/technique/python 在里面看到一篇关于ValueError: invalid literal for int() with base 10错误的解析,针对这个错误,博主已经给出解决办法,使用的是re.sub 方法 1 totalCount = '100abc' 2 totalCount = re.sub("\D", "", totalCount) 但是没有说明什么含义,于

Python基础总结(字符串常用,数字类型转换,基本运算符与流程控制)

一.字符串常用操作 #Python strip() 方法用于移除字符串头尾指定的字符(默认为空格) name='*egon**' print(name.strip('*'))#移除 name 变量对应的值两边的*,并输出处理结果 print(name.lstrip('*'))#移除 name 变量左边的*,并输出处理结果 print(name.rstrip('*'))#移除 name 变量右边的*,并输出处理结果 #startswith,endswith name='alex_SB' print

Python基础之基本数据类型一《数字与字符串》

一.运算符 结果是值 算数运算                            a = 10 * 10                  赋值运算                            a = a + 1    a+=1 结果是布尔值 比较运算                            a = 1 > 5                  逻辑运算                            a = 1>6 or 1==1              

[编程题] 扫描透镜(本题还涉及如何从字符串中提取数字)

在N*M的草地上,提莫种了K个蘑菇,蘑菇爆炸的威力极大,兰博不想贸然去闯,而且蘑菇是隐形的.只 有一种叫做扫描透镜的物品可以扫描出隐形的蘑菇,于是他回了一趟战争学院,买了2个扫描透镜,一个 扫描透镜可以扫描出(3*3)方格中所有的蘑菇,然后兰博就可以清理掉一些隐形的蘑菇. 问:兰博最多可以清理多少个蘑菇? 输入描述: 第一行三个整数:N,M,K,(1≤N,M≤20,K≤100),N,M代表了草地的大小; 接下来K行,每行两个整数x,y(1≤x≤N,1≤y≤M).代表(x,y)处提莫种了一个蘑菇.

python全栈学习总结二:数字、字符串、列表、元组、字典重要特点及方法

一 python中数据类型 整形:int 字符串:str 列表:list 元组:tuple 字典:dict 布尔值:bool 浮点型:float 一切皆对象,在python中,所有的数据类都是看做对象,故所有的类型名称都是类,通过类来建立对象,每个类中都有相应的方法,下面我们通过总结上面其中数据类型的特点以及常用的方法,来加深我们这些数据"类"的认识和理解. 二 各种数据类型总结 1 整形int 定义:age = 10 转换:value = int('158')  把字符串'158'转