Python简单程序

Python简单程序,python,Python,可能重复: 我是一名编程新手,正在努力学习python。我正试图写一个简单的代码,但却遇到了困难 这就是输入文本文件 A 1234 B 5 6 7 8 C 9 10 11 12 有人能帮助我如何输出第二列和第三列的元素,对应于我要输入的第一列的元素吗?换句话说,我应该如何编写一个程序,所以当我输入“B”时,当程序要求我输入字母时,程序将输出“5”和“6”,这是与“B”对应的第二列和第三列的元素 至少有人能给我一些暗示,我该怎么做 到目前为止,我已经: f=open('path of a fil

可能重复:

我是一名编程新手,正在努力学习python。我正试图写一个简单的代码,但却遇到了困难

这就是输入文本文件

A 1234

B 5 6 7 8

C 9 10 11 12

有人能帮助我如何输出第二列和第三列的元素,对应于我要输入的第一列的元素吗?换句话说,我应该如何编写一个程序,所以当我输入“B”时,当程序要求我输入字母时,程序将输出“5”和“6”,这是与“B”对应的第二列和第三列的元素

至少有人能给我一些暗示,我该怎么做

到目前为止,我已经:

f=open('path of a file','r')

for line in f.readlines():

    data = line.split(' ')
    if len(data) == 5:
        #print data[0]
        letter=raw_input("Enter the letter")
        print letter

请从初学者教程开始,如免费

对于您的特定问题,您是否希望在屏幕上以图形方式绘制这条线?如果是这样,您还需要使用某种GUI工具包。我更喜欢,但其他的选择,如,和也是可行的。如果你不需要画,那只是一道简单的数学题

从本教程开始,当您遇到一些不起作用的代码或困扰您的特定设计问题时,可以问另一个更具体的问题

编辑: 下面是一些基于您提供的代码,这些代码为您提供了一个需要填写的基本结构

#open file
f=open('path of a file','r')

#some data structure to store the file data in.  A list or dictonary could both be useful.
my_data = ...

#populate data structure
for line in f.readlines():
    #put the line in my data structure in some way
    #splitting the line and storing the resulting list could be useful
    #again, a dictionary may be useful here too (indexed by the "code" value)


#get user input
letter=raw_input("Enter the letter")

#handle bad user input

#calculate what you need

#display output

python中的'2nd'和'3rd'元素与这里提到的'2nd'和'3rd'元素不同。在python中,有
zeroth
元素,因此
B
的“first”元素实际上是
6
,而不是
5

是的,这很奇怪,但事实就是这样

解决这个问题的诀窍在于
A
B
C
D
的可预测性;您的问题表明,每行都有一个元素列表。每个元素至少有三个元素,这意味着您可以获得列表中的
[1]
[2]
元素,而无需运行
索引器

就像其他答案/评论所建议的那样,拿起python教程,完成一半后,向其他同学或老师寻求帮助,如果你仍然被卡住了

祝你好运,快乐

一个简单的方法:

file = open('filename', 'r', 0)
dict = {}
for line in file:
    line = line.strip().split(' ')
    dict[line[0]] = (line[1], line[2])

letter = raw_input('Enter letter')
print dict[letter]

当然,您可以操作元组部分并打印

不幸的是,这个问题很有可能被解决,因为这是一个“我在所有事情上都需要帮助”类型的问题,而且听起来像是家庭作业。如果这是家庭作业,那么您有讲师/助教/任何可以使用的东西(希望如此),否则,您实际完成了多少python工作?比如说,你通过了吗?如果你的老师给了你这段代码,你应该让他们在上下文管理器上阅读
。当迭代文件的行时,readlines()
不是必需的。它只是创建了一个中间列表,这是对内存的浪费(即使它不会持续很长时间)。