微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用Python格式化

如何解决用Python格式化

我有一个值列表,如下所示:

no column
1. 111-222-11
2. 112-333-12
3. 113-444-13

我想将值从111-222-11格式化为111-222-011,然后类似地格式化其他值。这是我在Python 3中使用的代码片段:

‘{:03}-{:06}-{:03}.format(column)

希望您能提供帮助。

解决方法

假设column是一个变量,可以为其分配字符串值111-222-11112-333-12113-444-13等,您想要将其更改为{{1} },111-222-011112-333-012等,看来您尝试使用切片符号和113-444-013方法的组合来实现此目的。

切片符号

切片符号应用于字符串时,会将其视为由字符组成的类似列表的对象。从字符串开头的字符的位置索引从零开始。从字符串末尾开始的字符的位置索引以format开头。第一个冒号-1分隔切片的开头和结尾。切片的结尾不像其开始那样包含在其中。您可以使用方括号来指示切片,就像指示列表中的项目索引一样:

:

会返回

'111-222-11'[0:8]

通常,字符串的第一个和最后一个字符的索引被冒号跳过并隐含。

知道分配给'111-222-' 的字符串的最后两位数字之前需要添加前导零的确切位置时,只需使用切片符号即可做到:

column

column[:8] + '0' + column[-2:] 方法

format方法是字符串格式化方法。因此,在对字符串应用该方法时,您想在字符串周围使用单引号或双引号来表示它们:

format

大括号中的数字不是片段。它们是占位符,在此将插入传递到'your output string here'.format('your input string here') 方法的字符串。因此,结合切片和format方法,您可以在format字符串的最后两位数字之前添加前导零,如下所示:

column

不必制作更多的切片,因为只有一个地方要插入字符。

'{0}0{1}'.format(column[:8],column[-2:]) 方法

切片的另一种方法是使用split方法用定界符分割字符串。 split方法返回字符串列表。您需要使用split运算符为前缀,以将参数从列表中解压缩,然后再将其传递给*方法。否则,整个列表将传递到第一个占位符。

format

它将字符串拆分为一个列表,将'{0}-{1}-0{2}'.format(*column.split('-')) 作为分隔符,并将每个项目放入一个新字符串中,该字符串在最后一个字符之前添加-字符。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?