■入力された文字列に応じて、置換をおこない、
実行例のように出力するプログラムを作成せよ
■ 入力された文字列内の
■ 「⻑」は「短」に置換し、「短」は「⻑」に置換する
python
1n = input("入力: ") 2n1 = n.replace("長","短").replace("短","長") 3 4print(n1)
このようにやりましたが「短い」と入力した時は「長い」になりますが、もう一方が動作しません。
どこが間違っていますか。
replaceを使って出力したいです。
例) 入力:一長一短
一短一長
長を短に置換した後、短を長に置換しています。
よって、長短どちらも最終的に長になります。
それはなんとなくわかりますが、どのように直したらいいかが分からないです。
> どのように直したらいいかが分からない
一度長短以外の「別の文字」に置き換えて、最後にもう一度「別の文字」を狙った文字に直せば行けるはずです。
どうしても困ったら返信ください。あとひと踏ん張りなのできっと行けるはずです。
「別の文字」を狙って試みましたが、実行できませんでした。私もあとひと踏ん張りと思うのですが、できません。。
> 「別の文字」を狙って試みました
のコードを、質問を編集して追記してください
(ここに書くのではなく、質問に追記する)
translate()ではなく、replace()を使用する事に限定されているんですよね?
回答2件
あなたの回答
tips
プレビュー