Python如何读入一行数字

在Python中,读取一行数字可以使用多种方法。本文将介绍三种常用的方法:使用input()函数、使用文件读取和使用正则表达式。

使用input()函数

input()函数用于从标准输入读取一行字符串,并返回该字符串。要读取一行数字,需要将字符串转换为数字类型。

# 读取一行数字并转换为列表
line = input()
numbers = list(map(int, line.split()))

# 打印结果
print(numbers)

上述代码首先使用input()函数读取一行字符串。然后,使用split()方法将字符串拆分为多个数字。接下来,使用map()函数将每个数字转换为整数类型,并使用list()函数将结果转换为列表。最后,打印列表以确认读取结果。

使用文件读取

如果数字以文件的形式存储,可以使用文件读取方法逐行读取数字。

# 打开文件并逐行读取数字
with open('numbers.txt', 'r') as file:
    lines = file.readlines()

numbers = []
for line in lines:
    number = int(line.strip())
    numbers.append(number)

# 打印结果
print(numbers)

上述代码使用open()函数打开名为numbers.txt的文件,并使用readlines()方法读取文件的所有行。然后,使用循环逐行读取数字,并使用strip()方法去除每行的换行符。最后,将数字添加到列表中,并打印列表以确认读取结果。

使用正则表达式

如果一行数字的格式比较复杂,可以使用正则表达式从字符串中提取数字。

import re

# 读取一行数字并提取数字
line = input()
numbers = re.findall(r'\d+', line)

# 将提取到的数字转换为整数类型
numbers = list(map(int, numbers))

# 打印结果
print(numbers)

上述代码使用re.findall()函数和正则表达式\d+从字符串中提取所有连续的数字。然后,使用map()函数将每个数字转换为整数类型,并使用list()函数将结果转换为列表。最后,打印列表以确认读取结果。

以上是三种常用的方法,根据具体的需求选择合适的方法来读取一行数字。希望本文能够解决你的问题,如有疑问,请随时提问。

代码饼状图

pie
    title 三种方法读取一行数字
    "使用input()" : 40
    "使用文件读取" : 30
    "使用正则表达式" : 30

代码序列图

sequenceDiagram
    participant User
    participant Python
    
    User->>Python: 输入一行数字
    Python->>Python: 使用input()函数读取字符串
    Python-->>User: 返回字符串
    User->>Python: 输入文件名
    Python->>Python: 使用文件读取方法读取文件
    Python-->>User: 返回数字列表
    User->>Python: 输入一行数字
    Python->>Python: 使用正则表达式提取数字
    Python-->>User: 返回数字列表

以上为读取一行数字的代码和示例,希望对你有帮助。