Python提取某字符串中的特殊0


以下例程:涉及文件读写、字符串处理


规则:提取64bit的数即8个byte中,每个byte的高4位为0时,去掉此高四位

将测试数写入test.txt,内如如下

d2065197970e3225
d206519797e03225
d260519797e03225
d286519797003225
d286519790003225
0086519797e03200



try:
    f_r = open("test.txt",'r')
    line = f_r.readline()  
    size = len(line)
    f_w = open("res.uid",'w')
    while line: 
        line_tail = line
        line_head = ''
        #print line_tail
        res = line_tail.find('0')
        while res>=0:       
            #print res
            if  res%2==0:                    
                line_head = line_head + line_tail[0:res]+line_tail[res+1]                      
                line_tail = line_tail[res+2:]       
            else:
                line_head = line_head + line_tail[0:res+1]      
                line_tail = line_tail[res+1:]           
            #print line_head
            #print line_tail
            res = line_tail.find('0')
        res_line = line_head+line_tail
        f_w.write(res_line)
        line = f_r.readline()
finally:
    f_r.close()
    f_w.close()



输出的res.uid,结果如下:

d2065197970e3225
d206519797e03225
d260519797e03225
d286519797003225
d286519790003225
0086519797e03200

符合要求


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Python可以使用正则表达式来提取字符串的单词。可以使用re.findall()函数来实现。例如: ``` import re text = "This is a sentence with several words" words = re.findall(r'\b\w+\b', text) print(words) ``` 输出结果为: ``` ['This', 'is', 'a', 'sentence', 'with', 'several', 'words'] ``` 也可以使用string.split()函数来实现 ``` text = "This is a sentence with several words" words = text.split(' ') print(words) ``` 输出结果为: ``` ['This', 'is', 'a', 'sentence', 'with', 'several', 'words'] ``` ### 回答2: 在Python,可以使用split()函数来提取字符串的单词。split()函数会将字符串按照空格进行分割,并返回一个包含分割后单词的列表。 例如,有一个字符串s = "Hello world! This is a sample string.",我想提取出其的单词。可以使用split()函数来实现: words = s.split() print(words) 运行以上代码,输出结果为:['Hello', 'world!', 'This', 'is', 'a', 'sample', 'string.'] 如果字符串存在其他分隔符,也可以在split()函数指定分隔符。例如,如果字符串s = "Hello-world!This/is/a/sample-string.",我们可以使用split('-')来按照"-"进行分割,并提取出单词: words = s.split('-') print(words) 运行以上代码,输出结果为:['Hello', 'world!This/is/a/sample', 'string.'] 需要注意的是,split()函数默认以空格作为分隔符,如果字符串存在连续的多个空格,则会被视为一个空格进行分割。 另外,如果需要删除字符串的标点符号,可以使用字符串的translate()函数配合使用translate()函数的string.punctuation属性来实现。具体做法是,先导入string模块,然后使用translate()函数替换字符串的标点符号为空格,再利用split()函数来提取单词。例如: import string translator = str.maketrans('', '', string.punctuation) s = "Hello, world! This is a sample string." s = s.translate(translator) words = s.split() print(words) 运行以上代码,输出结果为:['Hello', 'world', 'This', 'is', 'a', 'sample', 'string'] 这样就实现了提取字符串的单词并去除标点符号的功能。 ### 回答3: 要在Python提取字符串的单词,我们可以使用split()函数。split()函数将会把字符串分割成一个个的单词,并返回一个包含所有单词的列表。 例如,假设我们有一个字符串"Hello, how are you?",我们可以使用split()函数提取的单词,具体代码如下: ``` string = "Hello, how are you?" words = string.split() print(words) ``` 这段代码将会输出以下结果: ``` ['Hello,', 'how', 'are', 'you?'] ``` 可以看到,字符串被成功地分割成了四个单词。 如果字符串特殊符号或标点符号,我们可以使用正则表达式来去除它们,只提取单词。下面是一个示例代码: ``` import re string = "Hello, how are you?" words = re.findall(r'\b\w+\b', string) print(words) ``` 这段代码使用了re.findall()函数来匹配字符串的所有单词,并返回一个包含所有单词的列表。输出结果与之前的代码相同。 总结来说,Python提取字符串的单词可以使用split()函数或正则表达式,具体方法取决于字符串是否有特殊符号或标点符号。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值