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

一般做法:

 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. H5跟ios、android交互跟数据对接

    需求: APP要用H5页面做展示,而且要获取到对应的商品ID,用户点击H5页面跳回APP原生页面. 方法: 先要判断用户是ios还是android设备(这里只考虑ios跟android,因为它俩写法还 ...

  2. angular2-响应式表单

    响应式表单是同步的.模板驱动表单是异步的.这个不同点很重要 使用响应式表单,我们会在代码中创建整个表单控件树. 我们可以立即更新一个值或者深入到表单中的任意节点,因为所有的控件都始终是可用的. 模板驱 ...

  3. 【转】 ASP.NET使用ICallbackEventHandler无刷新验证用户名是否可用

    功能说明:当用户在用户名输入框输入字符并焦点离开此输入框时,自动到数据库用户表中验证此用户名是否已被注册,如果已被注册,显示[不可用],反之,显示[可用],期间页面不刷新,读者也可以考虑将提示文字换成 ...

  4. 超级表格:要山寨Excel,还是与之Say Byebye?

    创业产品难免被人拿来与现有的知名产品比较,创业者也喜欢把自己的产品与现有的知名产品比较. 我,超级表格创始人,对此有话说. 当我要在各种场合描述超级表格是什么时,也纠结过. 向用户描述时,说超级表格类 ...

  5. 简谈 Java 中的泛型通配符

    很好的一篇文章https://zhuanlan.zhihu.com/p/26681625

  6. Struts的学习-配置

    1.进入官网http://struts.apache.org/download.cgi#struts2513,这里为下载地址,(ps:struts-2.5.13-all版本). 2.将..\strut ...

  7. 出租WiFi到底靠不靠谱?

    创业是一种心态,也是不断的探索,他融入我们的生活,从日常中积累,从小微处启航. 一.背景交代 最近在换工作,本周搬到新租的单身公寓,空间不大,倒是干净整洁.委托租房中介帮忙开通宽带,告知是电信网最低开 ...

  8. IOS Block的本质

    #import "HMViewController.h" #import "HMPerson.h" @interface HMViewController () ...

  9. linux自动备份文件 并上传到远程服务器 脚本实现

    (1)在服务器上创建备份目录,并赋予权限       mkdir -p /backup/bakdata  #新建数据备份目录(2)完成备份脚本操作新建脚本文件      vi bakdata.sh添加 ...

  10. BZOJ2730:[HNOI2012]矿场搭建(双连通分量)

    Description 煤矿工地可以看成是由隧道连接挖煤点组成的无向图.为安全起见,希望在工地发生事故时所有挖煤点的工人都能有一条出路逃到救援出口处.于是矿主决定在某些挖煤点设立救援出口,使得无论哪一 ...