1. 首页
  2. 机器学习

7、Python输入,输出和导入

本教程重点介绍两个内置函数print()和input(),以在Python中执行I / O任务。另外,您还将学习如何导入模块并在程序中使用它们。

Python提供了许多内置函数,这些函数可以在Python提示符下随时使用。

一些功能,例如input()和,print()分别广泛用于标准输入和输出操作。让我们首先看一下输出部分。


使用print()函数的Python输出

我们使用该print()功能将数据输出到标准输出设备(屏幕)。我们也可以将数据输出到文件中,但这将在后面讨论。

下面给出了其用法示例。

print('This sentence is output to the screen')

输出

This sentence is output to the screen

下面给出另一个示例:

a = 5
print('The value of a is', a)

输出

The value of a is 5

在第二条print()语句中,我们可以注意到在字符串和变量的值之间添加了空格一个。这是默认设置,但是我们可以更改它。

print()函数的实际语法为:

print(* objects,sep ='',end ='\ n',file = sys.stdout,flush = False)

此处objects是要打印的值。

sep分离器的值之间使用。默认为空格字符。

在打印所有值之后,end将进行打印。默认为新行。

file是,其中被打印的值的目标和它的默认值是sys.stdout(画面)。这是一个例子来说明这一点。

print(1, 2, 3, 4)
print(1, 2, 3, 4, sep='*')
print(1, 2, 3, 4, sep='#', end='&')

输出

1 2 3 4
1 * 2 * 3 * 4
1#2#3#4&

输出格式

有时我们想格式化输出,使其看起来很吸引人。这可以通过使用该str.format()方法来完成。此方法对任何字符串对象都是可见的。

>>> x = 5; y = 10
>>> print('The value of x is {} and y is {}'.format(x,y))
The value of x is 5 and y is 10

在这里,花括号{}用作占位符。我们可以使用数字(元组索引)指定它们的打印顺序。

print('I love {0} and {1}'.format('bread','butter'))
print('I love {1} and {0}'.format('bread','butter'))

输出

I love bread and butter
I love butter and bread

我们甚至可以使用关键字参数来格式化字符串。

>>> print('Hello {name}, {greeting}'.format(greeting = 'Goodmorning', name = 'John'))
Hello John, Goodmorning

我们还可以像sprintf()在C编程语言中使用的旧样式一样格式化字符串。我们使用%运算符来完成此任务。

>>> x = 12.3456789
>>> print('The value of x is %3.2f' %x)
The value of x is 12.35
>>> print('The value of x is %3.4f' %x)
The value of x is 12.3457

Python输入

到目前为止,我们的程序是静态的。变量的值已定义或硬编码到源代码中。

为了提供灵活性,我们可能希望从用户那里获取输入。在Python中,我们具有input()允许此功能的功能。的语法input()是:

input([prompt])

prompt我们希望在屏幕上显示的字符串在哪里。它是可选的。

>>> num = input('Enter a number: ')
Enter a number: 10
>>> num
'10'

在这里,我们可以看到输入的值10是一个字符串,而不是数字。要将其转换为数字,我们可以使用int()float()函数。

>>> int('10')
10
>>> float('10')
10.0

可以使用该eval()功能执行相同的操作。但是eval,要更进一步。如果输入是字符串,它甚至可以计算表达式

>>> int('2+3')
Traceback (most recent call last):
  File "<string>", line 301, in runcode
  File "<interactive input>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '2+3'
>>> eval('2+3')
5

Python导入

当我们的程序变得更大时,将其分解为不同的模块是一个好主意。

模块是包含Python定义和语句的文件。Python模块具有文件名,并以扩展名结尾.py

可以将模块内部的定义导入另一个模块或Python中的交互式解释器。我们使用import关键字来做到这一点。

例如,我们可以math通过输入以下行来导入模块:

import math

我们可以通过以下方式使用该模块:

import math
print(math.pi)

输出

3.141592653589793

现在,math模块内的所有定义都可以在我们的范围内使用。我们还可以使用from关键字仅导入一些特定的属性和功能。例如:

>>> from math import pi
>>> pi
3.141592653589793

导入模块时,Python会查看中定义的多个位置sys.path。它是目录位置的列表。

>>> import sys
>>> sys.path
['', 
 'C:\\Python33\\Lib\\idlelib', 
 'C:\\Windows\\system32\\python33.zip', 
 'C:\\Python33\\DLLs', 
 'C:\\Python33\\lib', 
 'C:\\Python33', 
 'C:\\Python33\\lib\\site-packages']

我们也可以将自己的位置添加到此列表中。

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站不拥有所有权,不承担相关法律责任。如发现有侵权/违规的内容, 联系QQ1841324605,本站将立刻清除。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

联系我们

服务热线:130-0886-1890

QR code