字符串的格式化

  1. 顺序传参
  2. 索引传参
  3. 关键字传参
  4. 容器类型传参(列表和元组)

{}相当于占位符

1 顺序传参

strvar = "他{}牺牲自己,{}出卖组织"
res = strvar.format("宁愿","也不")
print(res)
res = strvar.format("白白","忘了")
print(res)

执行

[root@node10 python]# python3 test.py
他宁愿牺牲自己,也不出卖组织
他白白牺牲自己,忘了出卖组织

2 索引传参

strvar = "他{1}牺牲自己,{0}出卖组织"
res = strvar.format("宁愿","也不")
print(res)
res = strvar.format("忘了","白白")
print(res)

执行

[root@node10 python]# python3 test.py
他也不牺牲自己,宁愿出卖组织
他白白牺牲自己,忘了出卖组织

3 关键字传参

strvar = "他{word0}牺牲自己,{word1}出卖组织"
res = strvar.format(word0="宁愿",word1="也不")
print(res)
res = strvar.format(word1="忘了",word0="白白")
print(res)

执行

[root@node10 python]# python3 test.py
他宁愿牺牲自己,也不出卖组织
他白白牺牲自己,忘了出卖组织

4 容器类型传参

strvar = "他{0[0]}牺牲自己,{1[0]}出卖组织"
res = strvar.format(["宁愿","害怕","与其","宁愿"],["也不","所以","也不","也要"])
print(res)
strvar = "他{0[1]}牺牲自己,{1[1]}出卖组织"
res = strvar.format(["宁愿","害怕","与其","宁愿"],["也不","所以","也不","也要"])
print(res)
strvar = "他{0[2]}牺牲自己,{1[2]}出卖组织"
res = strvar.format(["宁愿","害怕","与其","宁愿"],["也不","所以","也不","也要"])
print(res)

执行

[root@node10 python]# python3 test.py
他宁愿牺牲自己,也不出卖组织
他害怕牺牲自己,所以出卖组织
他与其牺牲自己,也不出卖组织

第二种写法

format 格式化时, 要注意如果是字典,不要加引号.

strvar = "他{group2[0]}牺牲自己,{group1[jiusuan]}出卖组织"
res = strvar.format(group1 = {"jiusuan":"也要","为了":"努力"},group2=["绝不","除非"])
print(res)

执行

[root@node10 python]# python3 test.py
他绝不牺牲自己,也要出卖组织

5 format填充符号的使用

^ 原字符串局中
< 原字符串局左
> 原字符串局右

填充

strvar = "他{jiusuan:*^10}牺牲自己,{yeyao:>>8}出卖组织"
res = strvar.format(jiusuan="就算",yeyao="也要")
print(res)
strvar = "他{reai:*^10}牺牲自己,{gengai:!<8}出卖组织"
res = strvar.format(reai="热爱",gengai="更爱")
print(res)

执行

[root@node10 python]# python3 test.py
他****就算****牺牲自己,>>>>>>也要出卖组织
他****热爱****牺牲自己,更爱!!!!!!出卖组织

6 占位符

:d 整型占位符
:f 浮点型占位符
:s 字符串占位符
:, 金钱占位符

示例

strvar = "一周有{:d}天"
res = strvar.format(7)
print(res)
strvar = "一周有{:3d}天"
res = strvar.format(7)
print(res)
strvar = "一周有{:^10d}天"
res = strvar.format(7)
print(res)
strvar = "一周有{:<10d}天"
res = strvar.format(7)
print(res)
strvar = "一周有{:>10d}天"
res = strvar.format(7)
print(res)

执行

一周有7天
一周有 7天
一周有 7 天
一周有7 天
一周有 7天

7 关键字的使用

pass / break / continue

pass 过 起到占位的作用

例如

if 5 == 5:

是因为没有结束符

if 5 == 5:
pass

再次执行就不会报错,起到一个占位的作用

break 只能应用在循环当中 用于终止当前循环

i = 1
while i<=10: if i == 5:
break
print(i)
i+=1 i = 1
while i<=3:
j = 1
while j<=3:
print(i,j)
if j == 2:
break # 终止当前所在的循环
j+=1
i+=1

执行

[root@node10 python]# python3 test.py
1
2
3
4
1 1
1 2
2 1
2 2
3 1
3 2

continue 跳过当前循环,从下一次循环开始

打印1~10 不打印5

i = 1
while i<=10: if i == 5:
i+=1
continue print(i) i+=1

执行

[root@node10 python]# python3 test.py
1
2
3
4
6
7
8
9
10

打印所有1~100 不含有4的数

# 方法一
i = 1
while i <= 100: if "4" in str(i):
i+=1
continue print(i)
i+=1 # 方法二
i = 1
while i<=100:
if i // 10 == 4 or i % 10 == 4:
i+=1
continue print(i)
i+=1

010.Python字符串的格式化的更多相关文章

  1. python 字符串的格式化

    python字符串的格式化分为两种:1)% 方式    2)str.format()  方式. str.format() 是比 % 较新的方式, 大多数的 Python 代码仍然使用 % 操作符.但最 ...

  2. Python字符串与格式化的一点用法

    #python的基本语法网上已经有很多详细的解释了,写在这里方便自己记忆一些 1.python于C语言不同的是,python没有字符的概念,所谓的字符就是长度为1的字符串,使用切片或者索引同样可以对字 ...

  3. python - 字符串的格式化输出

    # -*- coding:utf-8 -*- '''@project: jiaxy@author: Jimmy@file: study_2_str.py@ide: PyCharm Community ...

  4. Python字符串类型格式化之format方法

    python字符串格式化一般使用 format() 方法,用法如下: <模板字符串>.format(<逗号分割的参数>) 其中模板字符串中可以由一个或多个 {} 组成的 槽 , ...

  5. python字符串的格式化

    # -*- coding:utf-8 -*- """ @Author:janson @Date:2018/8/1 @File:StrFormat.py "&qu ...

  6. Python字符串的格式化,看这一篇就够了

    相信很多人在格式化字符串的时候都用"%s" % v的语法,PEP 3101 提出一种更先进的格式化方法 str.format() 并成为 Python 3 的标准用来替换旧的 %s ...

  7. 『无为则无心』Python基础 — 10、Python字符串的格式化输出

    目录 1.什么是格式化输出 2.Python格式化输出的五种方式 方式一:字符串之间用+号拼接 方式二:print()函数可同时输出多个字符串 方式三:占位符方式 方式四:f格式化方式(推荐) 方式五 ...

  8. python字符串的格式化输出

    很多时候我们在打印输入内容时希望有简单格式而不是拼接 一般做法: name = input("name:").strip() age = input("age:" ...

  9. 【Python④】python恼人的字符串,格式化输出

    恼人的字符串 计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.由于计算机是美国人发明的,因此,最早只有127个字母被编码到计算机里,也就是大小写英文字母.数字和一些符号,这个编码 ...

随机推荐

  1. C# WebView2 在你的应用中使用Chromium内核

    什么是WebView2? Win10上对标Edge浏览器 Chromium内核 简单的可视为WebBrowser组件的升级版 如何使用WebView2? 官网下载 WebView2 RunTime V ...

  2. NLP入门学习中关于分词库HanLP导入使用教程

    大家好,时隔多年再次打开我的博客园写下自己的经验和学习总结,开园三年多,文章数少得可怜,一方面自己技术水平局限,另一方面是自己确实想放弃写博客.由于毕业工作的原因,经常性的加班以及仅剩下少的可怜的休息 ...

  3. Spring Security OAuth 2.0 发放令牌接口地址自定义

    OAuth 2.0 如何获取令牌 以密码模式为例,获取 Token curl --location --request POST 'http://oauth-server/oauth/token' \ ...

  4. CentOS系统安装Nginx

    目录 1. 官网下载地址 2. 上传到服务器安装 2.1 检查是否安装以下软件包 2.2 安装 2.3 安装nginx 3. 启动&停止 nginx是 HTTP 和反向代理服务器,邮件(IMA ...

  5. Score UVA - 1585

    ​ There is an objective test result such as "OOXXOXXOOO". An 'O' means a correct answer of ...

  6. Day05_24_继承

    继承 什么是继承? 继承本质上是对某一批类的抽象,从而实现对现实世界更好的建模.继承是类和类之间的一种关系,除此之外类和类之间的关系还有依赖.组合.聚合等. 继承就是子类(派生类)继承父类(基类)的特 ...

  7. ReentrantLock理解

    原文出处:http://www.yund.tech/zdetail.html?type=1&id=ef94715a2838f06ab03b8621c23d1613 作者:jstarseven ...

  8. 详解JavaScript中的正则表达式

    实际工作中,JavaScript正则表达式还是经常用到的.所以这部分的知识是非常重要的. 一.基础语法: 第一种:字面量语法 var expression=/pattern/flags; 第二种:Re ...

  9. 06- web兼容性测试与web兼容性测试工具

    web兼容性概述 定义:软件兼容性测试是指检查软件之间能否正确地进行交互和共享信息.随着用户对来自各种类型软件之间共享数据能力和充分利用空间同时执行多个程序能力的要求,测试软件之间能否协作变得越来越重 ...

  10. Android平台的so注入--LibInject

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/53890315 大牛古河在看雪论坛分享的Android平台的注入代码,相信很多搞An ...