删除 Python 字符串中的前导零

Vaibhhav Khetarpal 2023年10月10日
  1. 在 Python 中使用迭代语句删除字符串中的前导零
  2. 在 Python 中使用 lstrip() 函数和列表推导式来删除字符串中的前导零
  3. 在 Python 中使用 startswith() 方法+ 循环+ 列表切片删除字符串中的前导零
删除 Python 字符串中的前导零

在执行数据处理时,去除前导或尾部零是必不可少的,并且数据必须向前传递。将字符串从一个地方转移到另一个地方时,杂散的 0 可能会附着在字符串上,建议将其移除,因为这既不必要又不方便。

本教程演示了可用于在 Python 中删除字符串中前导零的几种方法。

在 Python 中使用迭代语句删除字符串中的前导零

在 Python 中删除字符串中前导零的最简单和最基本的方法是使用迭代语句手动删除它们。在这里,我们使用 for 循环和 while 循环手动创建一个代码,以创建一个程序,该程序在 Python 中删除字符串中的前导零。

以下代码使用 for 循环在 Python 中删除字符串中的前导零。

A = [
    "0001234",
    "01000",
    "1000",
]
removeleading = []

for x in A:
    while x[0] == "0":
        x = x[1:]
    removeleading.append(x)
print(removeleading)

上面的代码提供了以下输出:

['1234', '1000', '1000']

在上面的代码中,我们使用了两个迭代语句,一个 for 循环和一个 while 循环,后者嵌套在前者中。最后,我们附加新创建的列表,然后在进行必要的更改后显示它。

在 Python 中使用 lstrip() 函数和列表推导式来删除字符串中的前导零

lstrip() 可用于删除字符串的前导字符(如果存在)。默认情况下,空格 是字符串中要删除的前导字符。

列表推导式是一种相对较短且非常优雅的方式,可以创建基于现有列表的给定值形成的列表。

我们可以将这两件事结合起来,对我们有利。

以下代码使用 lstrip() 函数和列表推导式来删除 Python 中字符串中的前导零。

A = [
    "0001234",
    "01000",
    "1000",
]
res = [ele.lstrip("0") for ele in A]
print(str(res))

上面的代码提供了以下输出。

["1234", "1000", "1000"]

在上面的代码中,lstrip() 函数用于去除给定字符串中的前导零。这里使用列表推导来进一步扩展逻辑并成功实现该程序而没有任何错误。

在 Python 中使用 startswith() 方法+ 循环+ 列表切片删除字符串中的前导零

当字符串以用户在函数定义中指定的值开头时,startswith() 方法提供一个 True 值。我们将这个 startswith() 函数与一个 looplist slicing 结合起来,在 Python 中删除字符串中的前导零。

以下代码使用 startswith() 方法 + 循环 + 列表切片在 Python 中删除字符串中的前导零。

A = ["0001234", "01000", "1000"]
for idx in range(len(A)):
    if A[idx].startswith("0"):
        A[idx] = A[idx][1:]
print(str(A))

上面的代码提供了以下输出:

['001234', '1000', '1000']

在上面的代码中,打开了一个 for 循环以进行工作,并且在 startswith() 函数的帮助下完成了列表切片过程。

这种方法的缺点是它在一次运行中只删除一个前导零,这对于大数字可能会有问题。

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

相关文章 - Python String