【Python 千题 —— 基础篇】分解数据

2023-10-23 09:17:18 浏览数 (1)

题目描述

题目描述

编写一个程序,输入一个类似 “233,234,235” 格式的字符串,然后提取字符串中的数字,将这些数字存储在列表中,并输出该列表。在这里,我们使用 eval 函数来解析字符串中的数字。

输入描述

输入一个字符串。

输出描述

程序将从输入字符串中提取数字,将这些数字存储在列表中,并输出该列表。

示例
示例 ①
代码语言:javascript复制
233,234,235

输出:

代码语言:javascript复制
(233, 234, 235)

代码讲解

下面是本题的代码:

代码语言:javascript复制
# 描述: 输入一个类似 "233,234,235" 格式的字符串,提取字符串中的数字并输出为列表。
# 输入: 输入一个字符串。
# 输出: 程序将提取的数字存储在列表中,并输出该列表。

# 使用input函数读取输入的字符串
input_string = input()

# 初始化一个空列表,用于存储提取出的数字
numbers_list = []

# 使用split函数将输入字符串分割成数字部分
# 然后遍历每个数字并添加到列表中
for token in input_string.split(","):
    try:
        result = eval(token)
        numbers_list.append(result)
    except (NameError, SyntaxError):
        pass

# 使用print函数将提取出的数字列表输出
print(numbers_list)

思路讲解

下面是这个Python编程习题的思路讲解,适用于初学者:

读取输入字符串

  • 首先,我们使用 input() 函数读取用户输入的字符串,并将其存储在名为 input_string 的变量中。
代码语言:javascript复制
input_string = input()

初始化一个空列表

  • 我们初始化一个空列表 numbers_list,用于存储提取出的数字。
代码语言:javascript复制
numbers_list = []

使用 split 函数分割字符串

  • 我们使用 split(",") 函数将输入字符串按逗号 , 分割成多个部分,并返回一个包含这些部分的列表。
  • 随后,我们遍历这个列表中的每个部分。
代码语言:javascript复制
for token in input_string.split(","):

使用 eval 函数解析字符串中的数字

  • 在循循环中,我们使用 eval() 函数来尝试解析当前部分(即字符串中的数字),并将其计算结果添加到 numbers_list 中。如果解析失败,我们将忽略该部分。
代码语言:javascript复制
try:
    result = eval(token)
    numbers_list.append(result)
except (NameError, SyntaxError):
    pass

使用 print 函数输出提取出的数字列表

  • 最后,我们使用 print() 函数将提取出的数字列表 numbers_list 输出到控制台。
代码语言:javascript复制
print(numbers_list)

运行程序

  • 最后,保存你的代码并运行程序。当程序运行时,它将等待用户输入一个字符串,然后解析字符串中的数字,将这些数字存储在列表中并输出该列表。

这个习题涵盖了前面提到的知识点,包括使用 input() 函数读取用户输入的数据,字符串分割,使用 eval() 函数解析字符串中的数字,列表的操作,以及使用 print() 函数输出结果。

相关知识点

这个Python编程习题涉及了以下主要知识点:

input函数

  • input() 是Python中的内置函数,用于从用户处读取输入。它将等待用户在控制台中输入数据,并返回用户输入的内容。
  • 在这个题目中,我们使用 input() 函数来读取一个字符串。
代码语言:javascript复制
input_string = input()

split函数

  • split() 是字符串的一个方法,用于按指定的分隔符将字符串分割成多个部分,并返回一个包含这些部分的列表。
  • 在这个题目中,我们使用 split(",") 来将输入字符串按逗号 , 分割成多个部分。
代码语言:javascript复制
for token in input_string.split(","):

eval函数

  • eval() 是Python中的内置函数,用于解析字符串中的表达式,并计算结果。在这个题目中,我们使用 eval() 函数来 解析字符串中的数字,并将计算结果添加到列表中。
代码语言:javascript复制
result = eval(token)

列表

  • 列表是Python中的一种数据结构,用于存储多个值。在这个题目中,我们使用列表 numbers_list 来存储提取出的数字,并在最后使用 print() 函数输出列表。
代码语言:javascript复制
numbers_list = []
代码语言:javascript复制
print(numbers_list)

这个习题适合具有一些编程基础的学习者,因为它涵盖了Python编程的基础知识,包括输入、字符串操作、函数调用、列表操作和输出。帮助学习者理解如何从字符串中提取数字,并将它们存储在列表中。

0 人点赞