Python 读取用户指令和格式化打印实现解析

yipeiwu_com6年前Python基础

一、读取用户指令

当你的程序要接收用户输入的指令时,可以用input函数:

name = input("请输入你的名字:")
print("Hi " + name)

程序中只要有input函数就会等待用户输入完并按回车键之后才会继续往下执行代码

注:input()函数接收得到的值只是字符串,即使你输入的是数字或者其他数据类型的值,它也会把数字按照字符串处理,即接收得到值只会字符串。

二、格式化打印

假设现在需要打印出以下格式的内容,该怎么实现呢?

------------ Infomation of Kwan ------------
Name  : Kwan
Age   : 21
Sex   : male
Job   : Python
----------------- End ----------------

你会发现,如果用字符串的拼接方法很难实现这种格式的输出,而且如果是用户自己输入对应信息的话,要更改其中的内容也很不方便。

Python提供了一种很实用的方法来解决这一问题,只需要把要打印的内容的格式先准备好,由于里面的信息是需要用户自己输入的,因此可以先放置占位符,再把字符串里的占位符与外部的变量做个映射关系就好了。

name = input("请输入姓名:")
age = input("请输入年龄:")
sex = input("请输入性别:")
job = input("请输入工作:")
info = '''
------------ Infomation of Kwan ------------
Name  : %s
Age   : %s
Sex   : %s
Job   : %s
----------------- End ----------------
''' % (name, age, sex, job)  # 要按照对应的顺序放置参数
print(info)

%s代表的就是字符串的占位符,除此之外,还有%d,是数字的占位符,%f是浮点数占位符,如果把上面的例子中的Age处用%d的话,那就需要将age变量先转成数字类型才能用,因为age通过input接收到的数字是字符串。

从上图可看出,输入数字得到的却是str类型,即字符串。

注:input接收的所有输入的内容都是字符串格式

可以使用数据类型的转换来处理这一问题

age = int (input("请输入年龄:")) # 一定要要纯数字的字符串才能使用int方法转换
age_int = 21
age_str = str(age_int) # 数字也可转换成字符串

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅谈python中的getattr函数 hasattr函数

hasattr(object, name) 作用:判断对象object是否包含名为name的特性(hasattr是通过调用getattr(ojbect, name)是否抛出异常来实现的...

Python cookbook(数据结构与算法)将序列分解为单独变量的方法

本文实例讲述了Python cookbook(数据结构与算法)将序列分解为单独变量的方法。分享给大家供大家参考,具体如下: 如果对象是可迭代的(任何序列),则可以进行分解操作,包括元组、...

解决pyinstaller打包exe文件出现命令窗口一闪而过的问题

解决pyinstaller打包exe文件出现命令窗口一闪而过的问题

用pyinstaller打包的exe文件打开时,命令窗口一闪而过,并且未出现GUI界面,也看不到错误信息,然后去网上搜相关的信息,最多的两种说法: 1.添加raw_input()或者os...

完美解决在oj中Python的循环输入问题

完美解决在oj中Python的循环输入问题

完美解决在oj中Python的循环输入问题 这几天做题被python的循环输入问题给烦死了,好好查了一下,记录在此。 while True: t= sys.stdin.readl...

详解Python requests 超时和重试的方法

网络请求不可避免会遇上请求超时的情况,在 requests 中,如果不设置你的程序可能会永远失去响应。 超时又可分为连接超时和读取超时。 连接超时 连接超时指的是在你的客户端实现到远端...