请问这个怎么改才能让输出结果是按要求那样连在一起的啊,哪里出问题了呢
3条回答 默认 最新
- 梦幻精灵_cq 2023-10-31 19:49关注
- 1、您最后一行的缩进全部取消,它是最后结果输出语句
应该与外层for循环同级,缩进一致;
2、您的最后结果a应该累加每次解析出的摩尔斯电码(需要在for循环之前初始化a = ''为空字符串);
3、最后一行print()有“笔误”,关键字print前面多了一个d;
4、也可以把每次解析出的追加到一个列表,最后用str.join方法拼接输出,或者直接拼接列表解析式。
- 样例效果
python代码
#!/sur/bin/nve python # coding: utf-8 textMorse = '''1 .---- A .- N -. . .-.-.- 2 ..--- B -... O --- , --..-- 3 ...-- C -.-. P .--. : ---... 4 ....- D -.. Q --.- ' .----. 5 ..... E . R .-. ? ..--.. 6 -.... F ..-. S ... - -....- 7 --... G --. T - () -.--.- 8 ---.. H .... U ..- @ .--.-. 9 ----. I .. V ...- — -...- 0 ----- J .--- W .-- / -..-. K -.- X -..- Y -.-- M -- Z --..''' # 摩尔斯电码字典文本。 morseDict = {i.split()[0]: ''.join(i.strip().split()[1:]) for i in textMorse.split('\n')} # 从文本解析摩尔斯电码字典。 code = input('\nEnter your code: ').strip().upper() a = '' for x in code: a += morseDict[x] print(f"\ncode is encoded to {a}")
- str.join方法直接拼接列表解析式
字典用dict.get方法取key的值,比用dict[num]取值更好,给出第二个参数,dict中没有的key也不会报错,直接返回给定的参数。(如示例中的下划线字符“_”,给出了如dict中没有“_”key,就返回第二个参数''空字符串。)
python代码
code = input('\nEnter your code: ').strip().upper() print(f"\ncode is encoded to “{''.join([morseDict.get(i) for i in code])}”")
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用 - 1、您最后一行的缩进全部取消,它是最后结果输出语句
悬赏问题
- ¥15 如何让企业微信机器人实现消息汇总整合
- ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
- ¥15 如何用Python爬取各高校教师公开的教育和工作经历
- ¥15 TLE9879QXA40 电机驱动
- ¥20 对于工程问题的非线性数学模型进行线性化
- ¥15 Mirare PLUS 进行密钥认证?(详解)
- ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
- ¥20 想用ollama做一个自己的AI数据库
- ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
- ¥15 请问怎么才能复现这样的图呀