输入和输出

  • 输入输出
  • input输入函数
  • print输入函数
  • print格式化输出


输入输出

input输入函数

input函数:获取用户输入,保存成一个字符串。重要的话,说两遍,input函数的返回值是一个字符串类型。哪怕你输入的是个数字1,返回给你的只会是字符串“1”,而不是整数1。

input函数python字符串 python用input输入字符串_input函数python字符串


input函数python字符串 python用input输入字符串_python_02


从上面两个例子中,大家也可以发现了,我输入的值不管是什么,类型都是字符串。

type是python内置的函数之一,作用是查看数据的类型。

比如将字符串转换成数字类型。

age  =  input("请输入你的年龄:")
age  =  int(age)  #将字符串转化为整数
if  age  >  18:
	print("你已经成年!")
else:
    print("你还未成年")

前面我们在将字符串转化为整数用的是int()函数,这种方式有危险的。

snx  =  "20021123"
a  =  int(snx)
a
20021123
snx  =  "something"
a  =  int(s)
Traceback  (most  recent  call  last):
	File "<pyshell#12>",line  1, in	<module>
	ValueError:  invalid  literal  for  int()  with  base  10:'something'

对于形如“123”,“283242”的字符串,转化没问题,但是对于包含字符、特殊字符的字符串就没办法转化了,会弹出异常错误。所以在使用int函数之前,要先对输入进行判断

age  =  input("请输入你的年龄:")
if  age.isdigit():	#使用isdigit函数判断输入是否全是数字格式
	age  =  int(age)	  #将字符串转化为整数				
	print("你的年龄是:	",	age)
else:	
    print("输入不合法!")

input函数有时可以巧妙地用于阻塞或暂停程序

print("程序前面部分执行完毕......")
input("请按回车继续......")	#在这里程序会暂停,等待你的回车动作
print("继续执行程序的后面部分......")

此时的input函数不会将输入保存下来,只是用作暂停程序动作

print输入函数

print函数我们其实已经不陌生了,前面我们也已经用了很多次了。作用就是输出变量。

a  =  "python"
b  =  "teacher"
print(a,b)
"python  teacher"	#自动以空格分隔
print(a+"a"+"b")
"pythonab"  #无分隔

我们看一下print函数的原型:print(self,*args,sep=’ ‘,end=’\n’,file=None)
sep参数:分隔的符号,默认是一个空格
end参数:打印后的结束方式,默认为换行符\n。如果,设置end=’’,则可以不换行,让print在一行内连续输出。活用print的参数,可以实现灵活的输出控制。

a  =  "I  am"
b  =  "teacher"
print(a,"a",b,sep="*")
I  am*a*teacher

print格式化输出

在Python2.6以后,有两种格式化输出的方式。

一种就是类似C语言的printf的%百分号格式化输出,也是Python最基础最常用的格式化输出方式。另一种就是str.format()的方式。

这里先介绍一下传统的%格式化输出方式,例如:

print(“我叫%s 今年%d岁”%(‘python’,20))

首先构造了一个字符串"我叫%s 今年%d岁",讲其中需要用别的变量替换的部分,用%号加一个数据类型代号,前面有多少个%号,后面就要提供多少个参数,每个参数值之间用逗号隔开。每个参数与前面的%相对应的。并且数据类型也要能够合法对应。

格式化符号:

input函数python字符串 python用input输入字符串_后端_03


需要特别说明的是,如果你想在print中打印一个%百分符号本身,那么你需要使用%%,两个百分符转义出一个百分符

age  =  18
print('%d%%'%age)
18%