很多时候我们在打印输入内容时希望有简单格式而不是拼接

一般做法:

 name = input("name:").strip()
age = input("age:").strip()
job = input("job:").strip()
print("Name:" + name + " Age:" + age + " Job:" + job)

结果为:

Name:zhang Age:24 Job:IT

格式化输出做法:

name = input("name:").strip()
age = input("age:").strip()
job = input("job:").strip()
info = '''
----------info of %s ------- # info里每个%s就是一个占位符
Name : %s
Age : %s
Jog : %s
----------end---------------
'''%(name, name, age, job) # 这行的%就是把前面的占位符和括号后的变量关联
print(info)

结果为:

----------info of zhang -------
Name : zhang
Age : 24
Jog : IT
----------end---------------

除了%s还有%d、%f等多种类型可用,%d表示你输入的只能是数字,我们把age的%s换成%d看下会出现什么错误

 name = input("name:").strip()
age = input("age:").strip()
job = input("job:").strip()
info = '''
----------info of %s -------
Name : %s
Age : %d
Jog : %s
----------end---------------
'''%(name, name, age, job)
print(info)

报错信息:

Traceback (most recent call last):
File "C:/Users/admin/PycharmProjects/test.py", line 10, in <module>
'''%(name, name, age, job)
TypeError: %d format: a number is required, not str
Name:li Age:25 Job:farmer

原因是我们input输入的虽然是数字但是存到变量中是以字符串str类型保存的,要用%d必须要修改变量类型,把第10行做如下修改age变量转为int类型即可正常执行

'''%(name, name, int(age), job)

所以一般在格式化输出是用%s比较万能,因为你输入的都是字符串str,所以不会报错。

补充另一种格式化输出函数format:

print('{0} {1} {0}'.format('a', 'b'))
a b a
print('{} {}'.format('a', 'b'))
a b
print('{name} {age}'.format(age=24, name='aaa'))
aaa 24

python字符串的格式化输出的更多相关文章

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

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

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

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

  3. Python 3.x 格式化输出字符串 % & format 笔记

    Python 3.x 格式化输出字符串 % & format 笔记 python格式化字符串有%和{}两种 字符串格式控制符. 字符串输入数据格式类型(%格式操作符号) %%百分号标记 %c字 ...

  4. #python str.format 方法被用于字符串的格式化输出。

    #python str.format 方法被用于字符串的格式化输出. #''.format() print('{0}+{1}={2}'.format(1,2,3)) #1+2=3 可见字符串中大括号内 ...

  5. Python基础学习_01字符串的拼接(字符串的格式化输出)

    # 字符串的拼接 ---字符串的格式化输出 # 字符串的拼接 ---字符串的格式化输出 name = input("name:") age = input("age:&q ...

  6. python 字符串的格式化

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

  7. python基础_格式化输出(%用法和format用法)(转载)

    python基础_格式化输出(%用法和format用法) 目录 %用法 format用法 %用法 1.整数的输出 %o -- oct 八进制%d -- dec 十进制%x -- hex 十六进制 &g ...

  8. Python 入门之格式化输出

    Python 入门之格式化输出 1.格式化 (1)%为占位 (2)%s --- 站字符串的位置(数字.字符串都能够进行填充) name = input('请输入姓名:') age = input('请 ...

  9. Python基础篇(格式化输出,运算符,编码):

    Python基础篇(格式化输出,运算符,编码): 格式化输出: 格式:print ( " 内容%s" %(变量)) 字符类型: %s  替换字符串      %d 替换整体数字  ...

随机推荐

  1. 【数据库】2.0 MySQL入门学习(二)——如何获得MySQL以及MySQL安装

    1.0 如何获得MySQL: www.oracle.com https://dev.mysql.com/downloads/ 2.0 例如进入Oracle官网,找到MySQL: 进入页面后,切换到“资 ...

  2. 为mongodb添加账号

    进入切换到某一个数据库,我这里是位每个模块分配一个DataBase use 0 执行添加账号命令 db.createUser( { user: "*****", pwd: &quo ...

  3. Android ViewPager+TabHost实现首页导航

    今天发的是TabHost结合ViewPager实现首页底部导航的效果,虽然说网上有很多这样的Demo,不过呢,我还是要把自己练习写的发出来,没错!就是这么任性: 先上效果图,如下: 代码里面有注释,就 ...

  4. TELNET_COMMAND

    TELENT COMMAND DEFINE:Telnet is a command control your cmd windows of remote computer. step: 1.Open ...

  5. 一对多sql

    <!-- 分页查询派货成本 --> <select id="queryCostRegionPriceBycondtion" parameterMap=" ...

  6. leetcode 62、Unique Paths

    A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below). The ...

  7. Spring3+Struts2+Hibernate4+Mybatis整合的一个maven例子

    说明: 1.用了maven去搞这个demo,懒得去导jar包... 2.这个demo用了spring去做Ioc,事务的aop:用了struts2去做“MVC”(没有用到任何UI技术,有点对不起这个MV ...

  8. LA 2038 最少点覆盖

    题目链接:https://vjudge.net/problem/UVALive-2038 题意:我看了原题,lrj的书上题意写错了,应该是最少点覆盖,当然可以用最大匹配去做,由于是树形的: 可以树形D ...

  9. python nmap模块 端口探测

    今天添加端口探测功能,主要实现方式是通过nmap模块调用,扫描1-65535端口.上一篇中已经将UP的PC机全部获取到,这里直接从已知在线的PC中进行端口扫描就可以了,会节省很多时间. 代码如下,还是 ...

  10. 2018.12.13 Missing artifact net.sf.json-lib:json-lib:jar:2.4 错误

    原因:json-lib是需要区分jdk版本的,pom.xml中的配置应加上标签classifier指定jdk版本,如用jdk15