Python格式化字符串、占位符、合並數組


format

  參考鏈接:https://www.runoob.com/python/att-string-format.html

  format和%不同的地方在於前者需要有關鍵字format,並且format還能指定位置,不按順序

>>>"{} {}".format("hello", "world")    # 不設置指定位置,按默認順序
'hello world'
 
>>> "{0} {1}".format("hello", "world")  # 設置指定位置
'hello world'
 
>>> "{1} {0} {1}".format("hello", "world")  # 設置指定位置
'world hello world'

  

  也可以設置參數:

print("網站名:{name}, 地址 {url}".format(name="菜鳥教程", url="www.runoob.com"))
 
# 通過字典設置參數
site = {"name": "菜鳥教程", "url": "www.runoob.com"}
print("網站名:{name}, 地址 {url}".format(**site))
 
# 通過列表索引設置參數
my_list = ['菜鳥教程', 'www.runoob.com']
print("網站名:{0[0]}, 地址 {0[1]}".format(my_list))  # "0" 是必須的

  

  也可以向 str.format() 傳入對象

class AssignValue(object):
    def __init__(self, value):
        self.value = value
my_value = AssignValue(6)

  

  數字格式化(要有:其他都一樣)例:

  

3.1415926 {:.2f} 3.14 保留小數點后兩位

  

 

合並數組

參考鏈接:https://www.cnblogs.com/chaihy/p/7243143.html

>>> a=[2]
>>> b=[3]
>>> a.extend(b)
>>> a
[2, 3]
>>>

  

占位符

  

 

 

  參考鏈接:https://www.cnblogs.com/lvcm/p/8859225.html

  占位符的正確用法

>>> a=2
>>> print('ss%s'%a)#中間不用逗號
ss2

  占位符對數字的格式化

>>> print('%.2f'%22)
22.00
>>> a=555.222
>>> print('%2.2f'%a)
555.22
>>> print('%4.2f'%a)
555.22
>>> print('%9.2f'%a)
   555.22
>>> print('%11.2f'%a)#小數點前總共11個空格,若指定的空格數小於數字的長度,則取取數字的長度為
     555.22
>>>

  

  *)格式化整數和浮點數還可以指定是否補0和整數與小數的位數:

print('%2d-%03d' % (3, 1))#2,3代表一共2或者3位,3前面的0代表不夠了了補0
print('%.2f' % 3.1415926)

>>> print('%2d-%03d' % (3, 1))
 3-001#不補0有空格
>>> print('%.2f' % 3.1415926)
3.14
>>>

  

  有些時候,字符串里面的%是一個普通字符怎么辦?這個時候就需要轉義,用%%來表示一個%

>>> 'growth rate: %d %%' % 7
'growth rate: 7 %'
>>> 'growth rate: %d \%' % 7#不能使用轉義字符
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: incomplete format#incomplete:殘缺
>>>

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM