加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

删除数字字符串python

发布时间:2020-12-20 11:55:01 所属栏目:Python 来源:网络整理
导读:参见英文答案 Remove specific characters from a string in Python????????????????????????????????????25个 对于我的赋值,我必须创建一个函数,该函数返回一个与给定字符串相同但删除了数字的新字符串. 示例:删除数字(‘abc123′)将返回字符串’abc’. 我
参见英文答案 > Remove specific characters from a string in Python????????????????????????????????????25个
对于我的赋值,我必须创建一个函数,该函数返回一个与给定字符串相同但删除了数字的新字符串.

示例:删除数字(‘abc123′)将返回字符串’abc’.

我已经尝试了几乎所有我能想到的但是它不能正常工作:(

def test(str):
    for ch in str:
        num = ['0','1','2','3','4','6','7','8','9']
        if ch == num[0]:
            return str.replace(ch,'')
        elif ch == num[1]:
            return str.replace(ch,'')
        elif ch == num[2]:
            return str.replace(ch,'')
        elif ch == num[3]:
            return str.replace(ch,'')
        elif ch == num[4]:
            return str.replace(ch,'')
        elif ch == num[5]:
            return str.replace(ch,'')
        elif ch == num[6]:
            return str.replace(ch,'')
        elif ch == num[7]:
            return str.replace(ch,'')
        elif ch == num[8]:
            return str.replace(ch,'')

我输入test(‘abc123′),期望输出为’abc’.但我得到’abc23’作为我的输出.

在其他尝试中,同样的问题:

def test(str):
    for char in str:
        num = ['0','9']
        if char in list(num):
            return str.replace(char,'',len(str))

我得到了相同的结果.

谁能帮我?这将不胜感激.

解决方法

使用正则表达式

import re
def test(str):
    string_no_numbers = re.sub("d+"," ",str)
    print(string_no_numbers)
test('abc123') #prints abc

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读