Pythonのはじめ方と初級コード集め!
スポンサーリンク

Pythonを体験!初心者はローカル環境ではなくReplitで体験しよう

Pythonで文字を出力する

print("Hello world!")

Pythonでコメントを残す

# ハッシュタグをつけるとPythonではコメントアウトになります

Pythonでユーザーに入力をうながす

# input()はユーザーに入力を促します
print("Hello " + input("What's your name??") + "!")

Pythonでも文字数をカウントする

# 文字数を返すにはlen()を使います
print(len(input("あなたの名前は?")))

Pythonでは3桁ごとに「_(アンダースコア)」で区切れる

#数字の桁数を理解しやすい様に3桁ごとに「,」で区切ることがあるが、
#Pythonでは3桁ごとに「_」を利用して区切ることができる
#数字の桁をビジュアル化して理解しやすいようにすることができる
print(123_456_789)

データタイプを調べる方法!そしてinputで入力された数字はstringになる

# タイプを調べる方法。そしてinputで入力された数字はstringになる
number = input("あなたの好きな数字はいくつですか?")
print(type(number))

Integerをstringに変換しよう

# intをstrに変換する
word_char = len(input("Your favorite word?"))
new_word_char = str(word_char)
print("The length of your favorite word is " + new_word_char + ".")

inputで取得した数字を足し算する

first_num = input("1つ目の数字は?")
second_num = input("2つ目の数字は?")

result = int(first_num) + int(second_num)

print(result)

Pythonを使った2の3乗

print(2**3)

変数を直接入力するf_string

name = input("What is your name?")
print(f"Your name is {name}")

roundで小数点の四捨五入する場所をきめる

print(round(3.14, 0))
print(round(3.148, 2))

小数点第一で割り切れても第二まで0を表示させる方法

divide = 15 / 2
divide = "{:.2f}".format(divide)
print(f"15/2は{divide}です。")

Pythonで条件分岐を作る方法

user_age = float(input("あなたの年齢を教えてください "))
my_age = 32
my_tall = 172

if user_age == my_age:
  user_tall = float(input("同い年ですね。身長は何cmですか?"))
  if user_tall == my_tall:
    print("あなたはほとんど私です。")
  else:
    print("流石に身長までは一致しませんでしたね。")

elif user_age < my_age:
  print("あなたは人生の後輩です。")

else:
  print("あなたは人生の先輩です。")

配列の中にある文字を抽出する条件文

if + in を使って配列の中に調べたい値があるかを調べられる

words = ["a","b","c"]
print(words)
guess = input("Please enter something word").lower()
if guess in words:
  print("値はあります")
else:
  print("値はありません")

if + not in を使って配列の中に調べたい値がないかを調べられる

words = ["a","b","c"]
print(words)
guess = input("Please enter something word\n\n").lower()
if guess not in words:
  print("値はありません")
else:
  print("値はあります")

Pythonで小文字化と文字数カウントをやってみる

# [POLO]というペット名から”p”の数をカウントします
pet_name = input("What's your pet's name?")
lower_pet_name = pet_name.lower()
print(lower_pet_name)
count_p_pet_name = lower_pet_name.count("p")
print(count_p_pet_name)

Pythonで論理演算子をやってみる

# [POLO]というペット名から”p”の数をカウントします
pet_name = input("What's your pet's name?")
lower_pet_name = pet_name.lower()
print(lower_pet_name)
count_p_pet_name = lower_pet_name.count("p")
print(count_p_pet_name)

モジュールのインポート

同じ改装にある「sub.py」をインポートする方法 ①ファイルごとインポート

# これはsub.pyのコードです
list = [1,2,3,4,5,6,7,8]
# これはmain.pyのコードです
import sub
print(sub.list)

同じ改装にある「sub.py」をインポートする方法 ②要素のみインポート

# これはsub.pyのコードです
list = [1,2,3,4,5,6,7,8]
# これはmain.pyのコードです
from sub import list
print(list)

1−10の整数をランダムに生成する

ランダムモジュールをインポートして実行する必要がある

# ランダムモジュールをインポートします
import random

#1−10の整数をランダムで生成する指示をします
random_integer = random.randint(1, 10)
print(random_integer)

0−1までの少数をランダムに表示する

import random

random_float = random.random()
print(random_float)
ファイルインポートについて

リスト:日本の都道府県のリストを作る

さまざまなリストのメソッド

# 日本の都道府県のリストを作る
japan_prefecture = ["北海道","青森県","岩手県","宮城県","秋田県","山形県","福島県","茨城県","栃木県","群馬県","埼玉県","千葉県","東京都","神奈川県","新潟県","富山県","石川県","福井県","山梨県","長野県","岐阜県","静岡県","愛知県","三重県","滋賀県","京都府","大阪府","兵庫県","奈良県","和歌山県","鳥取県","島根県","岡山県","広島県","山口県","徳島県","香川県","愛媛県","高知県","福岡県","佐賀県","長崎県","熊本県"]

# 宮崎県を最後に追加
japan_prefecture.append("宮崎県")

# 大分県を43番目、宮崎県の前に追加
japan_prefecture.insert(43,"大分県")

# 以下の3県を最後に追加
japan_prefecture.extend(["鹿児島県","沖縄県","びんせん県"])

# 不要な県を削除
japan_prefecture.remove("びんせん県")

print(japan_prefecture)

ランダムな抽出をするchoice

# ランダムな値を抽出
import random
lists = [1,2,3,4,5,6]
list = random.choice(lists)
print(list)

配列をシャッフルするShuffle

# 配列のシャッフル
import random
lists = [1,2,3,4,5,6]
random.shuffle(lists)
print(lists)

ASCII ARTを表示させる

aardvarks = '''
                    _,,......_
                 ,-'          `'--.
              ,-'  _              '-.
     (`.    ,'   ,  `-.              `.
      \ \  -    / )    \               \
       `\`-^^^, )/      |     /         :
         )^ ^ ^V/            /          '.
         |      )            |           `.
         9   9 /,--,\    |._:`         .._`.
         |    /   /  `.  \    `.      (   `.`.
         |   / \  \    \  \     `--\   )    `.`.___
    .;;./  '   )   '   )       ///'       `-"'
        `--'   7//\    ///\
'''

print(aardvarks)

Pythonで文字列を分割してリスト化する

split()を使います。()内に文字を指定しない場合は半角スペースで区切られます。

# 犬,猫,ハムスター,サルをリスト化します
lists = input("カンマ区切りで文字を入力してください。").split(",")
print(lists)

Pythonでループ構文を作る

リストの数だけループする

animalsのリストをanimalに入れてプリントをループさせる。

animals = ["犬","サル","きじ"]
for animal in animals:
  print(animal)

指定した範囲でループする

# 1から10までループする
for num in range(1,11):
  print(num)

1つ飛びで数える

# 1から10まで1つ飛ばしでループする
for num in range( 1, 11 , 2):
  print(num)

PythonのFunctionを知る

PythonでFunctionを定義する

# オリジナルのfunctionを作る方法
# functionを定義します
def my_function():
  print("こんにちは!")
  print("これは私が定義した新しいfunctionです!")

# functionを実行します
my_function()

Pythonを使ってロボットを動かすアプリであそぼう!

入力したものをリセットしよう

from replit import clear
clear()

Pythonで引数を用いたFunctionを作ろう

Pythonでラウンドアップ(切り上げ)をする

import math
num = 1.4
roundup_num = math.ceil(num)
print(roundup_num)

Pythonで配列の中の文字列の順番を調べる

alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
x = alphabet.index("a")
print(x)
# xは0になります

Pythonでdictionaryを作ろう!

JSONファイルのようにキーワードとコンテンツを対応させるdictionary。

# dictionaryを作る
mugiwara = {
  "船長": "モンキー・D・ルフィー",
  "副船長": "ロロノア・ゾロ",
  "航海士": "ナミ",
  "狙撃手": "ウソップ",
  "コック": "サンジ",
}

# dictionaryからデータを取り出す
print(mugiwara["船長"])

Pythonでdictionaryを作ろう!

dictionaryに追加をする

# 情報を追加する
mugiwara["医者"] = "チョッパー"

dictionaryを空にする

# 情報を消す
mugiwara = {}

キー情報を取り出す

# キー情報とコンテンツを取り出す
for key in mugiwara:
  print(key)
  print(mugiwara[key])

valueの中にdictionaryを入れる

# dictionaryを作る
one_piece = {
  "麦わら海賊団":{
    "船長": "モンキー・D・ルフィー",
    "副船長": "ロロノア・ゾロ",
    "航海士": "ナミ",
    "狙撃手": "ウソップ",
    "コック": "サンジ",}
}

# 情報を追加する
one_piece["麦わら海賊団"]["医者"] = "チョッパー"

# キー情報とコンテンツを取り出す
print(one_piece["麦わら海賊団"]["船長"])

よく使う配列とオブジェクトの組み合わせと追加のFunction

travel_log = [
  {
  "country":"France",
  "cities_visited": ["Paris", "Lille", "Dijon"],
  "total_visited": 12
  },
  {
  "country":"Germany",
  "cities_visited":["Berlin","Hamburg","Stuttgart"],
  "total_visited": 5
  },
]

def add_new_country(country, cities_visited,total_visited):
  new_country = {}
  new_country["country"] = country
  new_country["cities_visited"] = cities_visited
  new_country["total_visited"] = total_visited
  travel_log.append(new_country)

add_new_country(country="Japan", cities_visited=["Tokyo","Osaka","Nagoya"],total_visited=8)

print(travel_log)

Functionと返り値を取得するreturn

def new_function():
  result = 2 * 3
  return result

print(new_function())

単語の頭文字を全て大文字する

# 単語の頭文字を全て大文字する
txt = "Hello my friends!"
print(txt.title())
def format_name(l_name, f_name):
  format_l_name = l_name.title()
  format_f_name = f_name.title()
  return f"{format_l_name} {format_f_name}"

print(format_name("haRRY","poTTER"))

Functionに説明をつけよう!

説明をつけるにはダブルクオート3つで囲みます

def sample():
  """これはHelloと返すFunctionです"""
  return "Hello!"

sample()

print vs return

returnは関数を他の関数に代入して使用することができる。基本はreturnを使用する。

# 計算機

# 足し算
def add(n1,n2):
  return n1 + n2

# 引き算
def substract(n1,n2):
  return n1 - n2

# 掛け算
def multiply(n1,n2):
  return n1 * n2

# 割り算
def divide(n1,n2):
  return n1 / n2

# 関数を辞書へ代入
operations = {
  "+": add,
  "-": substract,
  "*": multiply,
  "/": divide
}

num1 = float(input("1つ目の数字はなんですか?: "))

for simbol in operations:
  print(simbol)

operation_symbol = input("計算式を選んで下さい: ")

num2 = float(input("2つ目の数字はなんですか?: "))

function = operations[operation_symbol]
answer = function(n1=num1,n2=num2)

print(f"{num1} {operation_symbol} {num2} = {answer}")

Functionの中でglobal変数を引用しよう

Functionの中では通常global変数はスコープ外になって、定義していない扱いになるが、引用する方法がある。

globalの値をFunctionで書き換えるとミスにつながるため、globalの中身を書き換えないようにする。

あくまで引用のみにとどめよう。

また、globalかどうか見分けがつくようにglobalはすべて大文字で書くと良い。

TAX = 0.1
def cal_add_tax(account):
  # globalを使うことでグローバル変数を引用できる
  global TAX
  return account * (1 + TAX)

print(int(cal_add_tax(1200)))

①バグ確認:range

以下のバグの修正点は?

# 修正前:プリントされない
for n in range(4):
  if n == 4:
    print("4です!")
# 修正後:rangeが4だと4が含まれない
for n in range(5):
  if n == 4:
    print("4です!")

②バグ確認:配列

以下のバグの修正点は?

# 以下だとエラーが発生
from random import randint
list = [1,2,3,4,5,]
num = randint(1, 6)
print(list[num])
# 範囲を適切に変更する
from random import randint
list = [1,2,3,4,5,]
num = randint(0, 5)
print(list[num])

デバッグにもってこい!Pythonチューター

Pythonチューターはプログラムの実行内容をビジュアル化してくれます。

ASCIIテキストを作るサイト

リストをつなげた文字列を作る

リストの要素をまとめて1つの変数を作るときどうすればいいでしょうか?

以下のようにfor文で1つづつ足し算していく方法がありますが、もっと簡単な方法があります。

以下のようにjoinを使用すればリストの中身をつなげた変数を作ることができます。