質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

2回答

3137閲覧

python 最後の文字列のあとの空白をなくしたい。

nobita

総合スコア66

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

1クリップ

投稿2018/09/29 14:35

編集2018/09/29 14:45
a = int(input()) s1 = input().split() s1 = [int(t) for t in s1] s2 = input().split() s2 = [int(u) for u in s2] for i in s2: for j in s1: to = i + j print(to,end =" ") print()

下記問題を解いているところなのですが、某プログラミングスキルのサイトのシステムでは、回答の答えがあっていても、空白が含まれているとエラーになる使用になっており、おそらく最後に空白が含まれてしまっていると思うのですが、最後の空白の出力をしないにはどのように修正したらいいのでしょうか?
出力結果が
5 6 7
7 8 9
9 10 11
なので、改行せずにというコードは書かないとだと思うし、3回出力したら改行なので、print()も必要だと思うのですが・・・
よろしくお願いいたします。

問題

 1 2 3
4

6 

8 

を↓

  1 2 3
4 5 6 7

6 7 8 9

8 9 10 11

の形で出力してください。
入力値は
3
1 2 3
4 6 8

入力される値
入力は標準入力にて以下のフォーマットで与えられます。

N
c_1 c_2 ... c_N
r_1 r_2 ... r_N

・1 行目に、表の行と列の数を表す整数 N が与えられます。
・2 行目に、N 個の整数が半角スペース区切りで与えられます。
この i 番目 (1 ≦ i ≦ N) の整数 c_i は i 列目に書かれている整数を表します。
・3 行目に、N 個の整数が半角スペース区切りで与えられます。
この i 番目 (1 ≦ i ≦ N) の整数 r_i は i 行目に書かれている整数を表します。
・入力は合計 3 行であり、 最終行の末尾に改行が1つ入ります。

解決コード↓

a = int(input()) s1 = input().split() s1 = [int(t) for t in s1] s2 = input().split() s2 = [int(u) for u in s2] l = len(s1) for i in s2: pp = 0 for j in s1: pp += 1 to = i + j if pp == l: print(to) else: print(to,end =" ")

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

3 通りの方法で書いてみました。
質問文の出力例と解決コードの出力が一致していなかったのですが、
入力:
3
1 2 3
4 6 8

出力:
4 5 6
6 7 8
8 9 10
となるようにしています。

p1.py

python3

1

n = int(input())

r_0 = [int(t) for t in input().split()]
c_0 = [int(u) for u in input().split()]

print()
for c in c_0:
row = [c + r - r_0[0] for r in r_0]
print(*row)

print()
for c in c_0:
row = [str(c + r - r_0[0]) for r in r_0]
print(" ".join(row))

print()
rows = [[str(c + r - r_0[0]) for r in r_0] for c in c_0]
[print(*rows[i]) for i in range(0, len(c_0))]

実行例 ![イメージ説明](86e5cddf7d969db0128be473aba9c770.png)

投稿2018/09/30 00:15

katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

自己解決

a = int(input())

s1 = input().split()
s1 = [int(t) for t in s1]
s2 = input().split()
s2 = [int(u) for u in s2]

l = len(s1)

for i in s2:
pp = 0
for j in s1:
pp += 1
to = i + j
if pp == l:
print(to)
else:
print(to,end =" ")

投稿2018/09/29 14:46

nobita

総合スコア66

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問