Python 如何做一名翻译?
我目前正在编写我的第一个网站,这是一个发明的语言翻译。你输入一个随机的短语,它应该被翻译成发明的语言。以下是翻译代码:Python 如何做一名翻译?,python,django,Python,Django,我目前正在编写我的第一个网站,这是一个发明的语言翻译。你输入一个随机的短语,它应该被翻译成发明的语言。以下是翻译代码: class TranslatorView(View): template_name= 'main/translated.html' def get (self, request, phrase, *args, **kwargs): translation = "" for letter in phrase:
class TranslatorView(View):
template_name= 'main/translated.html'
def get (self, request, phrase, *args, **kwargs):
translation = ""
for letter in phrase:
if letter.lower() in "a":
if letter.isupper():
translation = translation + "U"
else:
translation = translation + "u"
elif letter.lower() in "t":
if letter.isupper():
translation = translation + "A"
else:
translation = translation + "a"
elif letter.lower() in "c":
if letter.isupper():
translation = translation + "G"
else:
translation = translation + "g"
elif letter.lower() in "g":
if letter.isupper():
translation = translation + "C"
else:
translation = translation + "c"
return render(request, 'main/translator.html', {'translation': translation})
def post (self, request, *args, **kwargs):
phrase = request.POST.get('text', 'translation')
translation = phrase
context = {
'translation': translation
}
return render(request,self.template_name, context)
输入短语的模板:
{% extends "base.html"%}
{% block content%}
<form action="{% url 'translated' %}" method="post">{% csrf_token %}
<div class="form-group">
<center><h2 class = "display-3">TRANSLATE YOUR DNA CHAIN</h2></center>
<br>
<br>
<textarea class="form-control" name='text' id="exampleFormControlTextarea1" rows="6"></textarea>
<br>
<button type='Submit' class= "btn btn-primary btn-lg btn-block">Translate</button>
</div>
</form>
{% endblock content %}
{%extends“base.html”%}
{%block content%}
{%csrf_令牌%}
翻译你的DNA链
翻译
{%endblock内容%}
应在其中翻译文本的模板:
{% extends "base.html"%}
{% block content%}
<div >
<center><h2 class = "display-4">DNA TRANSLATED SUCCESFULLY INTO</h2></center>
<br>
<br>
<br>
<center>
<h3>
{{ translation }}
</h3>
</center>
</div>
{% endblock content%}
{%extends“base.html”%}
{%block content%}
DNA成功地翻译成
{{翻译}}
{%endblock内容%}
事情是这样的,当我翻译短语并将我重定向到已翻译的模板时,我编写的文本(例如:dadada)会在未翻译的情况下出现
我不知道错误在哪里。如果有人知道错误,请回答,因为我真的被卡住了,已经两个月没有进步了
谢谢您的代码中的问题在于post方法,您只是将短语sent并返回到上下文中 为了使代码更具可读性,我在视图中做了一些小改动,比如在函数中分离“翻译”过程,在字典中分离替换字符
from django.views import View
from django.shortcuts import render
class TranslatorView(View):
template_name = 'main/translated.html'
mapper = {
"a": "u",
"t": "a",
"c": "g",
"g": "c"
}
def translate(self, phrase):
translation = ""
for letter in phrase:
if letter.lower() in self.mapper:
translation += self.mapper[letter.lower()].upper() if letter.isupper() else self.mapper[letter]
return translation
def get(self, request, *args, **kwargs):
return render(request, 'main/translator.html')
def post(self, request, *args, **kwargs):
phrase = request.POST.get('text', 'translation')
return render(request, self.template_name, {'translation': self.translate(phrase)})
最后一个建议是,不要在html中使用
标记,因为它已被弃用,最好使用css文本对齐:居中代码>属性。天哪,它看起来好多了,终于起作用了。非常感谢你。我希望有一天我能像你一样擅长编码。