Python2年生 デスクトップアプリ開発のしくみ 体験してわかる!会話でまなべる!(森 巧尚)|翔泳社の本
  1. ホーム >
  2. 書籍 >
  3. Python2年生 デスクトップアプリ開発のしくみ 体験してわかる!会話でまなべる!

Python2年生 デスクトップアプリ開発のしくみ 体験してわかる!会話でまなべる!


形式:
書籍
発売日:
ISBN:
9784798174990
定価:
2,420(本体2,200円+税10%)
仕様:
B5変・208ページ
カテゴリ:
プログラミング・開発
キーワード:
#プログラミング,#開発環境,#開発手法,#Web・アプリ開発
紙の書籍

Pythonで
デスクトップアプリ開発を
体験してみよう!

【初心者でもできる!デスクトップアプリ開発を一緒に体験しよう】
Pythonの基礎知識はあるけど、
「アプリ開発って初心者には難しそう」
「プログラムで何か残るものを作ってみたい」
と思っていませんか?
本書はそうした方に向けて、初心者にも簡単に作れる方法を使ってデスクトップアプリ開発の基本をやさしく解説します。スマホアプリ、Webアプリに比べて、手軽に取り組めますので挫折することなく学習できます。本書を読んだあとは、スマホアプリやWebアプリ開発に挑戦してみてください。

【Python2年生について】
「Python2年生」は、「Python1年生」を読み終えた方を対象とした入門書です。ある程度、技術的なことを盛り込み、本書で扱う技術について身につけてもらいます。

『Python2年生 スクレイピングのしくみ』(ISBN:9784798161914)
『Python2年生 データ分析のしくみ』(ISBN:9784798164960)
も刊行されています。

【対象読者】
デスクトップアプリの作り方を知りたい初心者

【本書のポイント】
ヤギ博士&フタバちゃんと一緒に、デスクトップアプリ開発の考え方から丁寧に解説。デスクトップアプリ開発をする時に必要な前提知識からはじまり、デスクトップアプリ作りの基本、応用的なデスクトップアプリ、そしてゲームアプリ開発まで解説します。

【著者プロフィール】
森 巧尚(もり・よしなお)
アプリの開発や、技術書や電子工作マガジンなどでの執筆活動。関西学院大学非常勤講師、関西学院高等部非常勤講師、成安造形大学非常勤講師、プログラミングスクールコプリ講師など、プログラミングに関する幅広い活動を行っている。近著に、『Python1年生 第2版』、『Python3年生機械学習のしくみ』、『Python2年生 スクレイピングのしくみ』、『Python2年生 データ分析のしくみ』、『Java1年生』、『動かして学ぶ!Vue.js開発入門』(いずれも翔泳社)、『楽しく学ぶ アルゴリズムとプログラミングの図鑑』(マイナビ出版)などがある。

画像01

Pythonの基礎知識はあるけど、「アプリ開発って初心者には難しそう」「プログラムで何か残るものを作ってみたい」と思っていませんか?本書はそうした方に向けて、初心者にも簡単に作れる方法を使ってデスクトップアプリ開発の基本をやさしく解説します。スマホアプリ、Webアプリに比べて、手軽に取り組めますので挫折することなく学習できます。本書を読んだあとは、スマホアプリやWebアプリ開発に挑戦してみてください。

画像02
画像03
画像04

基礎知識がわかる

章の冒頭には漫画やイラストを入れて各章でまなぶことに触れています。冒頭以降は、 イラストを織り交ぜつつ、基礎知識について説明しています。

画像05

プログラムのしくみがわかる

必要最低限の文法をピックアップして解説しています。途中で学習がつまずかないよう、会話を主体にして、わかりやすく解説しています。

画像06

開発体験ができる

初めてデスクトップアプリ開発を学ぶ方が、楽しく学習できるように工夫したサンプルを用意しています。

第1章 Pythonでアプリを作ろう
LESSON 01 デスクトップアプリってなに?
LESSON 02 Pythonをインストールしよう
LESSON 03 tkinterでアプリを作ろう
LESSON 04 PySimpleGUIでアプリを作ろう

第2章 アプリ作りの基本
LESSON 05 アプリの作り方を理解しよう
LESSON 06 配色を選べるよ
LESSON 07 レイアウトで画面を作ろう

第3章 計算アプリを作ろう
LESSON 08 変数で文字列を作るなら、f文字列が便利
LESSON 09 割り勘アプリ
LESSON 10 BMI値計算アプリ
LESSON 11 出生の秘密アプリ
LESSON 12 干支調べアプリ

第4章 時計アプリを作ろう
LESSON 13 時間を測ろう
LESSON 14 時計アプリ
LESSON 15 ストップウォッチアプリ
LESSON 16 時間割アプリ

第5章 ファイル操作アプリを作ろう
LESSON 17 ファイルの読み書きをしよう
LESSON 18 テキストエディタアプリ
LESSON 19 画像を表示するアプリ
LESSON 20 画像の加工アプリ
LESSON 21 QRコードメーカーアプリ

第6章 ゲームアプリを作ろう
LESSON 22 おみくじアプリ
LESSON 23 じゃんけんアプリ
LESSON 24 足し算ゲームアプリ
LESSON 25 数当てゲームアプリ
LESSON 26 31ゲームアプリ
LESSON 27 これから先は、どうしたらいいの?

付属データはこちら

会員特典はこちら

お問い合わせ

内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。

正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。

利用許諾に関するお問い合わせ

本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。

  • よくある質問

    Q:PySimpleGUI 5を利用するとエラーがでる
    A:2024/3/4にPySimpleGUI 5にアップデートされ、ライブラリの方針が変わりました。PySimpleGUI 5をインストールすると、30日間のトライアル版として使えますが、ユーザー登録で取得できる「ライセンスキー(趣味で使う場合は無料)」がないとそれ以降使えなくなります。

    【PySimpleGUI 5を旧バージョンのPySimpleGUI 4に戻す方法】
    本誌のプログラムはPySimpleGUI 5でも使えますが、PySimpleGUI 4までは、ライセンスキーがなくても使えていましたので、以下の方法で旧バージョンに戻せばライセンスキーがなくても動きます。

    macOS版:ターミナルで
    python3 -m pip install pysimplegui==4.60.3

    windows版:コマンドプロンプトで
    py -m pip install pysimplegui==4.60.3

    【PySimpleGUI 5でユーザー登録してライセンスキーを設定】
    PySimpleGUI 5は、ユーザー登録をしてライセンスキーの取得が必要になります。
    PySimpleGUI 5をインストールしたあと、PySimpleGUIのプログラムを始めて起動すると、「First Time Installation」というウィンドウが表示され、チェックボックスにチェックを入れて[OK]をクリックすると、ライセンスキーの入力ダイアログが表示されます。
    [Sign Up]ボタンで「ユーザー登録のページ」がブラウザで開きます。
    [Free Trial]をクリックすると、30日間のトライアル版を使えます。

    トライアル版では、「TRIAL PERIOD ends in 30 days. Sign up.」と
    いった「トライアル版の表示」されます。
    この「トライアル版の表示」をクリックしても、「ユーザー登録のページ」がブラウザで開きます。
    https://pysimplegui.com/pricing

    「ユーザー登録のページ」では、趣味なら「無料版のHobbyist」、仕事で使うなら「有料版のCommercial」を選んでユーザー登録をします。この登録時に、自分のメールアドレスを入力して進めますが、メールに「ライセンスキー」が送られてきます。このキーは厳重に保管し、共有したりネットに公開したりしないようにします。

    トライアル版で、ライセンスキーを設定するには、まず以下のプログラムを書いて実行します。

    import PySimpleGUI as sg
    sg.home()

    実行するとホームダイアログが表示されます。
    ここで、「License Key」のタブをクリックして、入力欄にライセンスキーをペーストしてから、「Install」ボタンをクリックします。これで「トライアル版の表示」が出なくなり、1年間使えるようになります。ライセンスキーは毎年取得します。

    ライセンスキーの設定方法は以下のページにあります。

    https://docs.pysimplegui.com/en/latest/documentation/installing_licensing/license_keys/


    【PySimpleGUI 5でエラーが出ないように修正】
    PySimpleGUI 5では、エラーが出ることがあります。その場合、以下のプログラムの修正を行ってください。

    p.107:clock1.py
    p.108:clock2.py
    p.109:clock3.py

    【誤】
    while True:
    e, v = win.read(timeout=500)
    execute()
    if e == None:
    break
    win.close()

    【正】
    while True:
    e, v = win.read(timeout=500)
    if e == None:
    break
    execute()
    win.close()

ご購入いただいた書籍の種類を選択してください。

書籍の刷数を選択してください。

刷数は奥付(書籍の最終ページ)に記載されています。

現在表示されている正誤表の対象書籍

書籍の種類:

書籍の刷数:

本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

対象の書籍は正誤表がありません。

最終更新日:2024年04月15日
発生刷 ページ数 書籍改訂刷 電子書籍訂正 内容 登録日
1刷 028
書式:PySimpleGUI のインストールコマンド(Windows):PySimpleGUI 4を指定します。
py -m pip install pysimplegui
py -m pip install pysimplegui==4.60.3
2024.04.15
1刷 029
書式:PySimpleGUIのインストールコマンド(macOS):PySimpleGUI 4を指定します。
python3 -m pip install pysimplegui
python3 -m pip install pysimplegui==4.60.3
2024.04.15
1刷 114
上から2から3行目
ボタンは真ん中にあったほうが押しやすいので左右に「pg.Push()」を追加しましょう。pg.Push()が左右にあると
ボタンは真ん中にあったほうが押しやすいので左右に「sg.Push()」を追加しましょう。sg.Push()が左右にあると
2023.08.14
1刷 183
tashizan.py(183ページの上から11行目、12行目)のインデント
2刷
    global playflag
    if v["in1"].isdecimal() == False:
        win["txt2"].update("数字を入力してね。")
    else:
        mynum = int(v["in1"])
        if mynum == ans:
            win["txt2"].update("正解で~す!")
            win["txt1"].update("入力ボタンを押すと、次の問題が出るよ。")
            win["img"].update("futaba2.png")
            playflag = False
    else:
        win["txt2"].update(f"{mynum}じゃないよ。")
    global playflag
    if v["in1"].isdecimal() == False:
        win["txt2"].update("数字を入力してね。")
    else:
        mynum = int(v["in1"])
        if mynum == ans:
            win["txt2"].update("正解で~す!")
            win["txt1"].update("入力ボタンを押すと、次の問題が出るよ。")
            win["img"].update("futaba2.png")
            playflag = False
        else:
            win["txt2"].update(f"{mynum}じゃないよ。")
2023.02.10
1刷 197
test607.py
2刷
def com_turn(comnum):
    keynums = [2,6,10,14,18,22,26,30]
    getnextnums(comnum)
    for n in nextnums:
def com_turn(comnum):
    keynums = [2,6,10,14,18,22,26,30]
    getnextnums(comnum)
    comnum += 1
    for n in nextnums:
2023.03.06
1刷 201
31game.py
2刷
def com_turn(comnum):
    keynums = [2,6,10,14,18,22,26,30]
    getnextnums(comnum)
    for n in nextnums:
def com_turn(comnum):
    keynums = [2,6,10,14,18,22,26,30]
    getnextnums(comnum)
    comnum += 1
    for n in nextnums:
2023.03.06