python - 如何在没有尾随换行符的情况下打印?
问题描述
我正在尝试创建一个程序,该程序接受输入,然后将其从澳大利亚土著语言转换为英语。虽然程序的其余部分正常运行,但输出以错误的格式打印。我收到的输出是:
ngaju
kuja-piya
malilyi
我想收到的是:
ngaju kuja-piya malilyi
这是我的完整代码:
dictionary = open('dictionary.txt')
words = {}
for line in dictionary:
english, aboriginal = line.split(',')
words[english] = aboriginal
translator = input("English: ")
while translator:
sentence = translator.split()
for word in sentence:
print(words[word], end='')
translator = input("English: ")
以下是 dictionary.txt 的内容:
afternoon,wuraji-wuraji
I,ngaju
bird,jirripirdi
like,kuja-piya
dance,juka-pinyi
python,malilyi
laugh,ngarlarrimi
we,ngalipa
解决方案
我会说它是文件中的换行符,你保留在aboriginal
变量中,例如值ngaju\n
,所以当你打印它时,\n
创建一个新行,添加一个rstrip()
操作以删除前导空格/换行符
for line in dictionary:
english, aboriginal = line.rstrip().split(',')
words[english] = aboriginal
最安全的方法,同时应用.strip()
这两个词以确保您只取所需的内容,但如果您的文件格式正确(没有空格),则有点矫枉过正
for line in dictionary:
english, aboriginal = line.split(',')
words[english.strip()] = aboriginal.strip()
推荐阅读
- xml - How to access SVG parts with XPath on iOS
- android - MotionLayout onSwipe 自动完成速度
- java - 上个月的最后一个日期返回 30 天 5 月
- css - 在 JavaFX 中使用 Arial Unicode MS BOLD
- c# - 观察并删除(截图),如果在 Iphone 中使用我的应用程序时截取了屏幕截图
- duplicates - 邮递员重复收集/导出+重新导入
- django - 将数据填充到模型表单 Django 并在 URL Django 中传递 id 参数
- java - M2_HOME 将其路径设置为 bin
- corda - Corda 线性状态唯一性
- android - 为什么相对布局展开时framelayout内容消失