Python---基本知识5_之输入输出

我们不管是学习什么编程语言,都需要能够和程序进行交互,如果光是一个死程序,那就没有任何意义了,现在我们来学习Python的输入;

输入?

对于输入,广义上就是指数据传入程序里面,今天我们学习的是狭义上的输入,指的是从键盘上的输入,对于输入的函数,python2版本和python3版本语法稍微有些不一样:我这里主要讲一下python3版本的吧

content=input("请输入内容")

print(type(content))

print(content)       

对于python3版本的input()函数得到的值类型都是string,其实就是python2里面的raw_input()函数,python2里面的input()函数,其实就是执行代码,输入的语句会被当成代码执行,那我们的python3也想输入的语句被当成代码执行,应该怎么样呢,这就需要借助于eval()函数了,eval()函数接收的参数是string类型,他会把string类型的值当成代码来执行:

content='1+1'                                            content=input("请输入")

tag=eval(content)                                     tag=eval(content)

print(type(tag))                                         print(type(tag))

print(tag)                                                  print(tag)

输出?

那什么又是输出呢?就是把我们需要的数据进行显示出来,不管用什么方式显示出来都是输出,比如你可以打印到控制台,可以输出到图表,也可以输出到文件,在Pyhton2和Python3的输出也有一些不一样,在Python2里面用的是print语句,而对于python3用的是python函数;

下面我们先介绍一下python2的输出语句:

01,输出一个值;  print 6

02, 输出一个变量; num=8  print num

03,输出多个值;print 后面的值用,分隔开;

04,格式化输出;a种方式,这种方式其实就有点类式正则表达式,就是输出成你想要的表达式;

name='free'  age=18     newstr="我的名字是%s,我的年龄是%d"%(name,age)    print newstr

b种方式,newstr="我的名字是{0},我的年龄是{1}".format(name,age)        print newstr   

这种方式其实就是替代,name就替代0,age就替代1

05,输出到文件中,对于输出到文件,其实一般的日志,有很多都是保存在文件的,对于python而言,输出到文件很简单,  首先我们需要打开文件,或

者创建文件;f=open('ceshi.text','w'),第一个参数是文件名,第二个参数是权限;然后我们直接print内容进去;  print >>f,'111111'

06.输出不自动换行,不自动换行很简单,就在print语句后面加一个,就可以了,表示你后面还有内容,当然就不会自动换行了;

07,使用分隔符分割,print '=a'.join(['5','8','9'])  对于这种方式,我的理解是把数组重新组合后输出;

Python3的输出语句:对于python3的输出,利用的是print()函数,大致操作和python2差不多,只需要加一对括号就可以了;现在说一下不同的地方:

01:对于python3来说print()函数,一共有如下的参数:print(values,sep,end,file,flush):首先第一个参数就是我们需要输出的值,第二个是值与值得分隔符,第三个是以什么字符结尾,file指得是我们把内容输出到哪里去,flush指的是我们需不需要先缓存;

02:分隔符 print(1,8,9,sep='*')  默认是空格

03:结尾 print(1,8,9,end='9')   默认是换行

04:输出方式,f=open('ceshi.text','w')  print(8,9,110,file=f)  默认是标准输出,即控制台;

05,是否缓存;缓存得作用一般就是把值先存下来,可以存在文件,内存等等,然后我们取得时候就可以直接去缓存取出来了,就可以不用再去走逻辑了,这样就会快很多,flush这个参数指的就是我们输出得时候,先把值保存到缓存,还是说直接输出,当然各有好处;flush=true得时候就是不缓存,直接输出,print(999,end='',flush=True)

需要注意得是,我们啥时候从缓存去把值取出来并打印出来呢,python是这样设计得,只要他一遇到换行标识符就会立即取出并打印,

你可能感兴趣的:(Python---基本知识5_之输入输出)