当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python easyinput用法及代码示例


Python 中的 easyinput 模块提供了一个简单的输入接口,类似于 C++ 中的 cin 流。它支持包括文件在内的多种数据类型,并提供不同数据类型输入、多行输入等函数。

安装

要安装此模块,请在终端中键入以下命令。

pip install easyinput

使用的函数

  • 读取(*类型,数量=1,文件,as_list):从输入流返回令牌。

参数:

  • type:数据类型列表,每种类型都会返回相应的标记。
  • amount:用于将给定类型重复特定次数。
  • as_list :如果为 true,则令牌流作为列表返回,否则返回生成器。
  • file :文件实体流。
  • read_many(*类型,数量=1,文件=_StdIn):从输入流读取令牌,除非输入其他类型的元素。

示例1:read()和read_many()的工作

Python3


from easyinput import read_many, read
a = read(int)
b = read(str)
print("The elements using read : ")
print(a, b)
print("Integer inputs using read many : ")
for num in read_many(int):
    print(num)
# reading the string after integers
print(read())

输出:

演示read()和read_many()

示例 2:使用amount() 和as_list()

通常,当使用 read() 中的多个参数时,read() 返回一个列表。如果我们需要使用生成器而不是列表,as_list() 可以设置为 false。它的优点是可以避免列表的迭代来访问和填充不同的数据类型。

Python3


from easyinput import read
# input int, str, int chain 3 times
multi_input = read(int, str, amount=2)
# printing type and input
print(type(multi_input))
print(multi_input)
# putting as_list = False
print("Using as_list false : ")
multi_input = read(int, str, amount=2, as_list=False)
print(type(multi_input))
print(multi_input)

输出:

使用amount()和as_list()

示例3:使用read_many()输入文件

read() 和 read_many() 函数提供将文件作为输入流获取的函数,以从文件中获取数据并在控制台上渲染,或使用文件参数渲染到任何文件。

代码:

Python3


from easyinput import read_many
print("Getting integer inputs from files : ")
with open('gfg_file_input') as inp_file:
    for ele in read_many(int, file=inp_file):
        print(ele)

输出:

输出数量

示例 4:将自定义数据类型与 read() 一起使用

除了原始数据类型之外,read() 还可以接受接受字符串作为输入的类实例,这些字符串可用于转换为自定义类型以进行工作。下面的示例获取小写单词。

Python3


from easyinput import read
class ToLower:
    def __init__(self, ele):
        self.ele = ele.lower()
    def print_ele(self):
        print(self.ele)
# Gets object of ToLower class
ele = read(ToLower)
# printing the word
print("Lowercase string : ")
ele.print_ele()

输出:

将输入转换为小写

使用read_many_lines()

与 read_many() 类似,不同之处在于它一次读取整行,而不是在空格处移动到换行符。读取整行。

用法:

read_many_lines(rstrip=真,skip_empty=假)

参数:
rstrip :跳过输入的所有尾随换行符。默认值为 True。
skip_empty :默认为 false,当设置为 True 时,会跳过仅是空字符的行。

代码:

Python3


from easyinput import read_many_lines
print("Reading lines using read many lines : ")
count = 1
for line in read_many_lines():
    print(line)
    count = count + 1
    if count > 5:
        break
print("Reading lines using read many lines by skipping empty : ")
count = 1
for sline in read_many_lines(skip_empty=True):
    print(sline)
    count = count + 1
    if count > 5:
        break

输出:

read_many_lines 的示例



相关用法


注:本文由纯净天空筛选整理自manjeet_04大神的英文原创作品 easyinput module in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。