我个人具有以下字符串“ E2017010000000601”。该字符E用于控制,在年份之后是月份,然后是月份,最后一个位置是一个用户代码,最多包含7个位置。我想知道如何在Python中从字符串中间删除那些不需要的0。
例如,在字符串“ E2018090001002202”中,我不需要9和1之间的这三个零。 在字符串“ E2017010000000601”中,我不需要介于1和6之间的那七个零。 我有超过1000个带有这种类型字符串的文件,并且将其一一重命名很棘手。我知道在Python中我可以重命名大量文件,但是我做了一些代码,但无法以我解释的方式进行装载……有帮助吗?
答案 0 :(得分:1)
这是基本的字符串切片,只要您确定每个字符串的结构都相同即可。
您可以使用类似的内容:
<div>
<span class="wrap">
<span class="overflow" style="float: left; width: 50px">Long text that might overflow</span>
<span class='tooltip'>Long text that might overflow.</span>
</span>
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad recusandae perspiciatis accusantium quas aut explicabo ab. Doloremque quam eos, alias dolore, iusto pariatur earum, ullam, quidem dolores deleniti perspiciatis omnis.
</div>
这应该起作用,因为首先删除前七个值,即控制字符,年份和月份。
然后转到整数,该整数将删除前面的所有零,然后返回到字符串。
答案 1 :(得分:0)
与Alexis基本相同的答案,但是由于我还不能发表评论,所以在一个单独的答案中:由于您想保留字符串的“ EYYYYMM”部分,因此代码为:
>>>original_string = 'E2017010000000601'
>>>cut_string= original_string[:7] + str(int(original_string[7:]))
>>>cut_string
'E201701601'
一个简单的解释:我们知道字符串的前七个字符是什么,我们希望将其保留在字符串中。然后,我们添加字符串的其余部分,将其转换为整数,然后再返回为字符串,以便删除前面的所有不必要的零。