程序猿阵线联盟-汇总各类技术干货

06-Python输入-输出

2018-11-21  本文已影响0人  撩课学院

一、输入

1. Python2

raw_input

  1. 格式:
    result = raw_input('提示信息')
  2. 功能
    会等待用户输入内容,直到用户按下Enter
    会将用户输入的内容当做"字符串",传递给接收的变量

input

  1. 格式:
    result = input('提示信息')
  2. 功能
    会等待用户输入内容,直到用户按下Enter
    会将用户输入的内容当做“代码”进行处理!
    可以理解为
    input
    =
    raw_input
    +
    eval

2.Python3

input
相当于Python2中的raw_input

  1. 格式:
    result = input('提示信息')
  2. 功能
    会等待用户输入内容,直到用户按下Enter
    会将用户输入的内容当做"字符串",传递给接收的变量
    如果说想要实现类似于Python2中的input功能
    可以再使用eval()函数

二、输出

1.Python2

print 语句
print xxx

2.Python3

1.print 函数

            print(values, sep, end, file, flush)
            values
                需要输出的值
                    多个值, 使用 "," 进行分割
            sep
                分割符
                    多个值, 被输出出来之后, 值与值之间, 会添加指定的分隔符
            end
                输出完毕之后, 以指定的字符, 结束
                默认是换行 '\n'
            file
                表示输出的目标
                默认是标准的输出(控制台)
                    file=sys.stdout
                还可以是一个可写入的文件句柄
                    f = open("xxx", "w")
                    file=f
            flush
                表示立即输出的意思
                    需要输出的内容, 是先存放在缓冲区, 然后再输出到目标
                    flush, 就代表是否刷新缓冲区
                        让缓冲区的内容,立即输出到目标
                值为Bool类型
                    默认False

2.使用场景

    输出一个值
        Python2.x
            print 值
        Python3.x
            print(值)
    输出一个变量
        Python2.x
            print 变量名
        Python3.x
            print(变量名)
    输出多个变量
        Python2.x
            print 变量名1, 变量名2
        Python3.x
            print(变量名1, 变量名2)
    格式化输出
        Python2.x
            %写法
                print "随意内容...占位符1, ... , 占位符2, ..."%占位符要放的值
                print "随意内容...占位符1, ... , 占位符2, ..."%(变量1, 变量2)
            format写法
                print "随意内容...{索引}, ... , {索引}, ...".format(值1, 值2)
        Python3.x
            %写法
                print("随意内容...占位符1... "%占位符要放的值)
                print("随意内容...占位符1, ... , 占位符2, ..."%(变量1, 变量2))
            format写法
                print("随意内容...{索引}, ... , {索引}, ...".format(值1, 值2))
        补充: 占位格式符
            格式
                %[(name)][flags][width][.precision]typecode
                使用中括号[]包含的部分, 代表可选
            解释
                (name)
                    用于选择指定的名称对应的值
                flags
                    空
                        表示右对齐
                    -
                        -表示左对齐
                    空格
                        ' '为一个空格
                        表示在正数的左侧填充一个空格,从而与负数对齐
                    0
                        0表示使用0填充
                width表示显示宽度
                .precision表示小数点后精度
                typeCode
                    数值
                            i/d  
                             #将整数、浮点数转换成 十 进制表示,并将其格式化到指定位置
                            o  
                             #将整数转换成 八  进制表示,并将其格式化到指定位置
                            x   
                             #将整数转换成十六进制表示,并将其格式化到指定位置
                            e  
                             #将整数、浮点数转换成科学计数法,并将其格式化到指定位置(小写e)
                            E  
                             #将整数、浮点数转换成科学计数法,并将其格式化到指定位置(大写E)
                            f  
                             #将整数、浮点数转换成浮点数表示,并将其格式化到指定位置(默认保留小数点后6位)
                            F  
                             #同上
                            g  
                             #自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是e;)
                            G 
                             #自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是E;)
                    字符串
                            s 
                             #获取传入对象的__str__方法的返回值,并将其格式化到指定位置
                            r   
                             #获取传入对象的__repr__方法的返回值,并将其格式化到指定位置
                            c   
                             #整数:将数字转换成其unicode对应的值,10进制范围为 0 <= i <= 1114111(py27则只支持0-255);字符:将字符添加到指定位置
                    特殊
                            %   
                             #当字符串中存在格式化标志时,需要用 %%表示一个百分号
                    注:Python中百分号格式化是不存在自动将整数转换成二进制表示的方式
                        %b
    输出到文件中
        Python2.x
            file = open("test.txt", "w")
            print >> file, "i am sz"
        Python3.x
            file = open("test.txt", "w")
            print("i am sz", file=file)
    输出不自动换行
        Python2.x
            print a,
        Python3.x
            print("hello", "i am sz", end="")
    输出的各个数据, 使用分隔符分割
        print("i", "am", "sz", sep="---")
上一篇下一篇

猜你喜欢

热点阅读