🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

516閲覧

1番下の表の形になるpythonに直したい

fimkk

総合スコア1

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/01/28 12:49

編集2021/01/31 14:08

下記の文をpythonで正しく動くようにしたいです。
28行目からおかしいのですがわかりません。

import random
from openpyxl import Workbook

wb = Workbook()
ws = wb.active
ws.title = 'Sample'

def makeData():
ws['A1'].value = '名前'
ws['B1'].value = '点数'

data = ['青木', '太田', '木村', '小島', '佐藤'] for i in range(2,7): ws.cell(row=i, column=1).value = data[i - 2] _cell = ws.cell(row=i, column=2) _cell.number_format = '#,##0' _cell.value = random.randint(1,100) * 10 ws['A10'].value = '合計' ws['B10'].number_format = '#,##0' ws['B10'].value = '=SUM(B2:B6)' ws['A11'].value = '最大' ws['A11'].number_format = '#,##0'

if _cell.value > maxval:
maxval = _cell.value
ws['B11'].value = maxval

ws['A12'].value = '最小'
ws['A12'].number_format = '#,##0'
if _cell.value < minval :
minval = _cell.value
ws['B12'].value = minval
makeData()

wb.save('data.xlsx')
print('saved')

 A B
1名前 点数
2青木  random
3太田 random
4木村 random
5小島 random
6佐藤 random
7
8
9
10合計 randomの合計
11最大 randomの最大値
12最小 randomの最小値

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

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

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

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

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

guest

回答1

0

ベストアンサー

if文の最後には:(コロン)を付けましょう。

エラーメッセージをちゃんと読みましょう。

SyntaxError: invalid character in identifier

英語が不得意なら、翻訳ソフトで翻訳してみましょう。

Google翻訳で翻訳すると

syntaxError:識別子に無効な文字が含まれています

ですね。

また、質問するときは、<code>を押して、そこにソースを入れましょう。
ちゃんとやれば以下のように表示されます。

python

1import random 2from openpyxl import Workbook 3 4wb = Workbook() 5ws = wb.active 6ws.title = 'Sample' 7 8def makeData(): 9 ws['A1'].value = '名前' 10 ws['B1'].value = '点数' 11 data = ['青木', '太田', '木村', '小島', '佐藤'] 12 for i in range(2,7): 13 ws.cell(row=i, column=1).value = data[i - 2] 14 _cell = ws.cell(row=i, column=2) 15 _cell.number_format = '#,##0' 16 _cell.value = random.randint(1,100) * 10 17 ws['A10'].value = '合計' 18 ws['B10'].number_format = '#,##0' 19 ws['B10'].value = '=SUM(B2:B6)' 20 ws['A11'].value = '最大' 21 ws['A11'].number_format = '#,##0' 22 if _cell.value > maxval: 23 maxval = _cell.value 24 ws['B11'].value = maxval 25 ws['A12'].value = '最小' 26 ws['A12'].number_format = '#,##0' 27 if _cell.value < minval : 28 minval = _cell.value 29 ws['B12'].value = minval 30 31makeData() 32 33wb.save('data.xlsx') 34print('saved') 35

投稿2021/01/28 12:54

編集2021/01/31 14:37
ppaul

総合スコア24670

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

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

fimkk

2021/01/31 14:54

指摘していただきありがとうございます。 現在local variable 'maxval' referenced before assignmentというエラーメッセージが出ていてGoogle翻訳で割り当て前に参照されるローカル変数「maxval」とあるのですがどうしたらよいかわかりません。 教えていただきたいです。
fimkk

2021/01/31 16:06

解決できましたありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問