零基础搭建量化投资系统:以Python为工具
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.4 Python的输入语句和输出语句

前面我们学习了Python 3的赋值语句,这节介绍其输入语句和输出语句。

1.input输入函数

Python 3的输入函数是input()函数。input()函数从标准输入中读取一个字符串,但对于用户输入的回车键不会读取,因为它是以回车键作为输入结束标志的。

(1)input()函数读取的是一个字符串,如果想要输入数字型,就需要做数据类型的转换。

        a=input(’请输入一个股票代码:')
        print(type(a))
        #我们可以使用int()函数把字符串转为数字
        b=int(input(’请输入一个数字:'))
        print(type(b))

(2)如果想要输入多个数值变量,则可以使用eval()函数。

        #如果是多个字符变量,不能用int()函数把字符串转换为数字,就可以使用eval()函数
        a, b=eval(input(’请输入数字a, b :'))
        print(type(a), type(b))

下面给出input()函数的代码,示例2-9。

        #input()函数读取的是一个字符串,如果想要输入数字型,就需要做数据类型的转换
        a=input(’请输入一个数字:')
        print(a, type(a))
        #我们可以使用int()函数把字符串转换为数字
        b=int(input(’请输入一个数字:'))
        print(b, type(b))

       #如果想要输入多个数值变量,则可以使用eval()函数
        a, b=eval(input(’请输入数字a, b :'))
        print(a, type(a), b, type(b))

命令执行结果:

        请输入一个数字:20
        20 <class 'str'>

       请输入一个数字:30
        30 <class 'int'>

       请输入数字a, b :12,34
        12 <class 'int'> 34 <class 'int'>

2.print输出函数

Python 2和Python 3的print语句用法不同:Python 2输出用print语句,Python 3输出用print()函数。这里只介绍Python 3的print()函数。

Python 3的print()函数用法如下:

1)可以输出任何类型的变量或对象

无论什么类型的数据,如字符串、数值、布尔型、列表、字典等都可以直接输出。

示例2-10。

        a='Python3 ! '
        print('Hello '+a)
        d = {'a':1, 'b':2}
        print('d= ', d)
        c=12.5
        print('c= ', c)
        d=True
        print('d= ', d)

程序运行结果:

        Hello Python3 !
        d=  {'a': 1, 'b': 2}
        c=  12.5
        d=  True

如果你希望将输出的值转换成字符串,则可以利用repr()函数或str()函数来实现。

str()函数:可以将数值数据转换为字符串。

repr()函数:产生一个易于阅读的字符串格式,参数可以是Python 3的任何对象。

下面是示例2-11。

        import numpy as np

       print(str(10.5), str(2+3j), repr([x for x in range(10)]))
        print()
        a = np.arange(15).reshape(3, 5)
        print(a)
        print()
        print(repr(a))

命令执行结果:

        10.5(2+3j)[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

       [[ 0  1  2  3  4]
         [ 5  6  7  8  9]
         [10 11 12 13 14]]

       array([[ 0,  1,  2,  3,  4],
              [ 5,  6,  7,  8,  9],
              [10, 11, 12, 13, 14]])

2)自动换行

Print函数会自动在行末加上回车,如果不需要,则只需要在print函数的结尾添加一个“end”参数,即可改变它的输出行为。例如:

        for x in range(0,5):
            print(x, end='')

在Python 3中print(x)默认是换行的,如果想插入一个空行也可以写成print(),如果不想换行就要写成print(x, end = '')。

见示例2-12:

        for x in range(0,5):
            print(x, end=' ')

       print()
        for x in range(0,5):
            print(x, end=', ')

       print()
        for x in range(0,5):
            print(x, end='')

命令执行结果:

        0 1 2 3 4
        0,1,2,3,4,
        01234