字符串的格式化

  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. “知疫”疫情防控可视化平台——NABCD分析

    "知疫"疫情防控可视化平台 项目 内容 这个作业属于那个课程 2021春季学期软件工程(罗杰.任健) 这个作业的要求在哪里 初次邂逅,需求分析 1 NABCD分析 NEED 目前多 ...

  2. 【Prometheus学习笔记】主机监控 -node_exporter

    Exporter for machine metrics prometheus/node_exporter 安装 Prometheus sudo tar -zxvf prometheus-*.tar. ...

  3. JDK8之后,在java语言这条路怎么走?

    前言 自2017年9月以来,Oracle按照免费的开源许可证(类似于Linux的许可证)提供JDK版本 .从Java SE 11(2018年9月,LTS)开始,Oracle不仅为开源许可下的所有用户免 ...

  4. 【笔记】《算法竞赛入门》习题7-6 UVa12113_重叠的正方形

    title: 习题7-6 UVa12113_重叠的正方形 date: 2021-01-31 19:08:00 categories: 算法竞赛入门 tags: 数据结构 算法 UVa <算法竞赛 ...

  5. 关于Kotlin中日志的使用方法

    1 引言 想必学过Java的人都知道一个@Slf4j使用得多么的舒服: @Slf4j public class TestController{ @GetMapping("/test" ...

  6. 浅入Kubernetes(8):外网访问集群

    目录 查询 Service Service 外部服务类型 配置 ServiceType 伸缩数量 阶段总结 在前面几篇文章中,我们学习了 kubeadm .kubectl 的一些命令,也学会了 Dep ...

  7. 浅谈在c#中使用Zlib压缩与解压的方法

    作者:Compasslg 介绍 近期用c#开发一个游戏的存档编辑工具需要用 Zlib 标准的 Deflate 算法对数据进行解压. 在 StackOverflow 上逛了一圈,发现 c# 比较常用到的 ...

  8. 详解Linux指令与文件的搜寻

    我们在管理Linux服务器时通常会进行搜索文件及目录操作,下面我们就开始了解一下linux目录结构的相关知识. 博主再奉上一套零基础入门Linux视频,带你从入门到精通 https://www.bil ...

  9. D - 下个也是签到题 FZU - 2221(博弈)

    ZB loves watching RunningMan! There's a game in RunningMan called 100 vs 100. There are two teams, e ...

  10. 03- HTML基本结构

    初始HTML HTML(英文Hyper Text Markup Language的缩写)中文译为"超文本标签语言",主要是通过HTML标签对网页中的文本.图片.声音等内容进行描述. ...