我怎样才能用翻译词典写作?

2024-04-20 16:16:32 发布

您现在位置:Python中文网/ 问答频道 /正文

这就是我的程序的结构:

输入的第一行有一个n,表示翻译词典中的单词数。接下来的n行中的每一行都包含四个单词,第二到第四个单词是第一个单词的翻译。每个单词被翻译成三种不同的语言。第二个单词是英语翻译,第三个单词是法语翻译,第四个单词是第一个单词的德语翻译。最后一行包含需要从英语、法语或德语之一翻译的句子​​进入第一个单词。一个句子由几个用空格隔开的单词组成

输入:

4
man I je ich

kheili very très sehr

alaghemand interested intéressé interessiert 

barnamenevisi programming laprogrammation Programmierung

I am very interested in programming

正确输出:

man am kheili alaghemand in barnamenevisi

我的代码:

tedad = int(input())
d = dict(input().split(' ') for i in range(tedad))
c = ''
car = input().split(' ')

for x in car:
    if x in d:
        c+= ' '+d[x]

    else:
        c+=' '+x


print(c.strip())

我的代码有问题,显示了错误的输出。请帮助我更正代码并根据示例输出显示它


1条回答
网友
1楼 · 发布于 2024-04-20 16:16:32

dict(input().split(' ') for i in range(tedad))与您提供的输入不兼容,每行不包含2个字

一种方法可以是从您的代码:

tedad = int(input())
d = {}
for i in range(tedad):
    l = input().split()
    for x in l[1:]:
        d[x] = l[0]

c = ''
car = input().split()

for x in car:
    c += ' ' + (d.get(x) or x)

print(c[1:])

在文件p.py中包含该文件,并在i中输入:

pi@raspberrypi:/tmp $ cat i
4
man I je ich
kheili very très sehr
alaghemand interested intéressé interessiert 
barnamenevisi programming laprogrammation Programmierung
I am very interested in programming
pi@raspberrypi:/tmp $ python3 p.py < i
man am kheili alaghemand in barnamenevisi
pi@raspberrypi:/tmp $ 

相关问题 更多 >