Python3基础 str format 位置参数与关键字参数

  •                    python : 3.7.0
  •                           OS : Ubuntu 18.04.1 LTS
  •                          IDE : PyCharm 2018.2.4
  •                      conda : 4.5.11
  •            type setting : Markdown

code

xcx@xcx-PC:~$ source activate xingchuxin
(xingchuxin) xcx@xcx-PC:~$ ipython
Python 3.7.0 (default, Jun 28 2018, 13:15:42) 
Type 'copyright', 'credits' or 'license' for more information
IPython 6.5.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: # 位置参数

In [2]: "{0}{1}{2}{1}{0}".format("a","b","c")  # "a"填的是{0}   "b"填的是{1} "c"
   ...: 填的是2
Out[2]: 'abcba'

In [3]: 

In [3]: # 关键字参数

In [4]: "{var1}{var2}{var3}{var2}{var1}".format(var1="a",var2="b",var3="c")
Out[4]: 'abcba'

In [5]: 

In [5]: # 混合

In [6]: "{0}{var1}{var2}".format("a",var1="b",var2="c")  # 可以这么做,但不推荐
Out[6]: 'abc'

In [7]: 

In [7]: "{var}{0}".format("a",var="b")
Out[7]: 'ba'

In [8]: exit
(xingchuxin) xcx@xcx-PC:~$ source deactivate xingchuxin
xcx@xcx-PC:~$ 

addition

    def format(self, *args, **kwargs): # known special case of str.format
        """
        S.format(*args, **kwargs) -> str
        
        Return a formatted version of S, using substitutions from args and kwargs.
        The substitutions are identified by braces ('{' and '}').
        """
        pass

xcx@xcx-PC:~$ source activate xingchuxin
(xingchuxin) xcx@xcx-PC:~$ ipython
Python 3.7.0 (default, Jun 28 2018, 13:15:42) 
Type 'copyright', 'credits' or 'license' for more information
IPython 6.5.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: # 错误的示范

In [2]: "{var}{0}".format(var="b","a")
  File "<ipython-input-2-ec3e374dcf52>", line 1
    "{var}{0}".format(var="b","a")
                             ^
SyntaxError: positional argument follows keyword argument


In [3]: exit
(xingchuxin) xcx@xcx-PC:~$ source deactivate xingchuxin
xcx@xcx-PC:~$ 

resource

  • [文档] https://docs.python.org/3/
  • [规范] https://www.python.org/dev/peps/pep-0008/
  • [规范] https://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_language_rules/
  • [源码] https://www.python.org/downloads/source/
  • [ PEP ] https://www.python.org/dev/peps/
  • [平台] https://www.cnblogs.com/

tips

行初心 会根据所学的知识,对博文进行更新。
该博文地址:https://www.cnblogs.com/xingchuxin/p/9693434.html


Python具有开源、跨平台、解释型、交互式等特性,值得学习。
Python的设计哲学:优雅,明确,简单。提倡用一种方法,最好是只有一种方法来做一件事。
代码的书写要遵守规范,这样有助于沟通和理解。
每种语言都有独特的思想,初学者需要转变思维、踏实践行、坚持积累。

猜你喜欢

转载自www.cnblogs.com/xingchuxin/p/9693434.html