Python

文字列操作

【Python】文字列操作:文字列中に含まれる文字列の個数を数える

嫁ちゃん文章の中に含まれる特定の文字が何個あるか数えたいんですけど?わたしそんなときは、str型のcount()メソッドを使うといいよー♪はじめにstr.count()は、文字列中に含まれる特定の文字列の数を数えるメソッドです。用法str.count(sub]))の範囲に、部分文字列subが重複せず出現する回数を返します。オプション引数startおよびendはスライス表記と同じように解釈されます。...
文字列操作

【Python】文字列操作:find()、index() 文字列の検索

嫁ちゃん指定した文字列が文字列内のどの位置(インデックス)にあるか知りたいんですけど?わたしstr型のfind()メソッドを使えば、文字列の位置がわかるよ!はじめにstr型にはfind()やindex()メソッドが用意されており、文字列中に指定した文字列がどの位置(インデックス)にあるか調べることができます。index()メソッドは、指定した文字列が見つからなかったとき、ValueErrorが送出...
文字列操作

【Python】文字列操作:空白や指定文字の削除

嫁ちゃん文字列の前後に空白が入っているので、取り除きたいのですけど?わたしstrip()を使えば、空白や指定文字を取り除くことができるよー。はじめにstrip()メソッドは文字列の前後または、先頭、末尾にある不要な空白や文字を削除(除去)します。引数で文字を指定しなかった場合、タブや改行なども空白として削除されます。引数charsは削除される文字集合ですので、完全一致の文字列ではありません。用法s...
文字列操作

【Python】文字列操作:join() で文字列を連結(結合)する

嫁ちゃん文字列を繋(つな)ぎあわせたいんですけど?わたしjoin()メソッドを使えば簡単に繋ぎあわせることができるよ。はじめにjoin()メソッドを使えば、要素間(文字と文字の間(あいだ))にセパレータ(区切り文字)を入れることもできます。文字列の連結なので、数値がリストに含まれているとエラーが出力されます。用法str.join(iterable)iterable中の文字列を結合した文字列を返しま...
文字列操作

【Python】文字列操作:文字列を replace() で置き換える

嫁ちゃん文字列を違う文字に置き換えたいんですけど?わたしstr型には「replace()」という文字列置換のメソッドが用意されているよ。はじめに文字列中の指定された文字を別の文字に変換します。用法str.replace(old,new)文字列をコピーし、現れる部分文字列old全てをnewに置換して返します。オプション引数countが与えられている場合、先頭からcount個のoldだけを置換します。...
文字列操作

【Python】文字列操作:文字列を分割する

嫁ちゃんカンマ区切りの文字列などを分割したいのですが?わたしstr型には便利なメソッドが用意されているよはじめに文字列を指定した文字で分割する方法用法str.split(sep=None,maxsplit=-1)文字列をsepをデリミタ文字列として区切った単語のリストを返します。maxsplitが与えられていれば、最大でmaxsplit回分割されます(つまり、リストは最大maxsplit+1要素に...
文字列操作

【Python】文字列操作:文字列の最初の文字を大文字に変換

嫁ちゃん文字列の最初の文字を大文字にできると聞いたんですけど。わたし文字列str型にはcapitalize()というメソッドが用意されているよ。はじめに文字列の最初の文字を大文字に変換する方法用法str.capitalize()str型はイミュータブルなので、変数内の文字を書き換えるのではなく、変換された文字列strを返します。例firstName='taro'.capitaliz...
Tkinter

【Python】Tkinter:デスクトップアプリで「Hello world」を表示する

嫁ちゃんデスクトップ(ウィンドウ)アプリを作りたいんですけど?わたしでは、デスクトップアプリ版の簡単「Helloworld」を作ってみよー!はじめにtkinterモジュールを使って簡単なウィンドウを表示してみます。「Helloworld.」だけでは寂しいので、簡単なボタン処理もおこないます。Helloworldを表示するアプリの作成#coding:utf-8importtkinter#ウィンドウ作...
組み込み関数

【Python】組み込み関数:dir関数でクラスのメソッド一覧を表示

嫁ちゃん組み込み関数にどんなメソッドがあるか知りたいんですけど?わたし組み込み関数の「dir()」で、メソッドの一覧を取得できるよ。はじめにクラスに含まれるメソッドの一覧を取得します。用法dir()引数がない場合、現在のローカルスコープにある名前のリストを返します。引数がある場合、そのオブジェクトの有効な属性のリストを返そうと試みます。組み込み関数—Python3.8.2ドキュメントより引用例st...
文字列操作

【Python】文字列操作:文字列の大文字小文字変換

嫁ちゃん文字列を大文字や小文字に変換はどうやってするの?わたし文字列str型には大文字や小文字にするためのメソッドが用意されているよ。はじめに文字列を大文字や小文字に変換する方法用法#大文字str.upper()#小文字str.lower()str型はイミュータブルなので、変数内の文字を書き換えるのではなく、大文字や小文字に変換された文字列strを返します。例#文字列を大文字に変換print(&#...
文法

【Python】例外処理 try except の使い方

嫁ちゃんinput関数などで、数字だけを入力して欲しいのに、英単語とか入力されたら困りますよね。わたし例外処理try-exceptを使って、実行中のエラーをキャッチしてみよう例外処理をしなかった場合の記述以下例は、数字の入力を求め、その数字を出力するプログラムになります。x=int(input("数字を入力してください:"))print("入力された数字は、",x,"です。")このプログラムを実行...
文法

【Python】グローバル変数の書き方と注意点

嫁ちゃん変数にはローカル変数とグローバル変数があると聞いたのですが、どんなの?わたし変数が使用できる範囲(スコープ)が違うんだよ。グローバル変数グローバル変数とローカル変数の違いグローバル変数とローカル変数の違いは、変数が使用できる範囲(スコープ)の違いにあります。ローカル変数(ローカルスコープで宣言された変数)は関数やクラス内で宣言された変数で、これは別の関数からは基本的には参照できません。また...
組み込み関数

【Python】組み込み関数:int関数の使い方

嫁ちゃん文字列の数字を数値(整数)として扱いたいんですけど。わたし組み込み関数の「int()」を使うと数値(整数)に変換できるよ。はじめに文字列の数字を整数値に変換します。用法classint(x, base=10)xが数値でない、あるいはbaseが与えられた場合、xは文字列、bytesインスタンス、bytearrayインスタンスのいずれかで、基数baseの整数リテラルで表されたものでなければなり...
組み込み関数

【Python】組み込み関数:input関数でキーボード入力を取得

嫁ちゃんキーボードから入力した値を使ったプログラムを作りたいんですけど。わたし組み込み関数の「input」を使うことで実装できるよ!はじめにターミナルなどCUI(CharactorUserInterface)、CLI(CommandLineInterface)でキーボードからの入力を取得する組み込み関数input()を使ってみましょう用法input()引数promptが存在すれば、それが末尾の改行...
Tkinter

【Python】Tkinter:メッセージボックスを表示する

嫁ちゃんターミナルの文字だらけで疲れてきたよ。わたし気分転換にメッセージボックスを表示してみよー!はじめにtkinter.messageboxモジュールを使って簡単なウィンドウを表示してみます。用法fromtkinterimportmessageboxmessagebox.('','')メソッドの種類messagebox.showinfomessagebox.sho...
文字列操作

【Python】文字列操作:文字列中の文字の全角半角判定

嫁ちゃん文字列内の全角半角の区別をつけたいなーわたし文字列から1文字づつ取り出して、判定してみよう!はじめに文字列から1文字づつ取り出してunicodedata.east_asian_width()を使って全角と半角を判定してみます。用法importunicodedataret=unicodedata.east_asian_width(chr)ユニコード文字chrに割り当てられたeastasian...
文法

【Python】for文の書き方

嫁ちゃん繰り返し処理をおこなうのはどうするの?わたしfor文を使うと繰り返し処理をおこなうことができるよ。for文の書き方用法for変数inオブジェクト:処理や、for変数inオブジェクト:処理else:ループが終わった際の処理オブジェクトがリストの場合のfor文words=forwinwords:print(w)aaabbbcccオブジェクトがリスト(多次元)の場合のfor文words=[,,]...
環境構築

【Python】環境構築:TensorFlow2 を Mac にインストール

はじめに対話AIを作成するにあたって、Googleが提供しているTensorFlow(テンソルフロー)ライブラリをインストールしました。TensorFlow公式サイトはこちらTensorFlowは、機械学習向けに開発されたエンドツーエンドのオープンソースプラットフォームです。研究者が機械学習で最新の実験を行い、デベロッパーがML搭載アプリケーションを簡単に開発してデプロイできるよう、各種ツールやラ...
文字列操作

【Python】文字列操作:インデックスを指定して文字を抽出

嫁ちゃん文字列から文字を抽出する方法ですね。わたし文字列だけど、基本的には配列と一緒なので、インデックスが使えるよ。はじめに文字列から文字を抽出する方法にはいろいろな方法があります、ここでは簡単なインデックスを使って1文字取得する方法になります。インデックスに正数を指定した場合str='abcdefg'print(str)先頭0から数えて3番目の文字が出力されます。dインデックスに...
データ型

【Python】辞書操作:要素のソート(並び替え)

嫁ちゃん今回は辞書のソート(並び替え)ですね。わたしそうだね。ここではsorted関数を使って実装します。辞書のソート(並び替え)も覚えてしまえば、そんなに難しくないので、ここで一緒に学びましょう!辞書とは?辞書は他の言語にも"連想記憶(associatedmemory)"や"連想配列(associativearray)"という名前で存在することがあります。ある範囲の数でインデクス化されているシー...
データ型

【Python】辞書操作:要素の削除

嫁ちゃん今回は辞書から要素を削除する方法ですね。わたしそうだねー!リストの時と同じ様な方法で要素を削除できるよ。辞書とは?辞書は他の言語にも「連想記憶(associatedmemory)」や「連想配列(associativearray)」という名前で存在することがあります。ある範囲の数でインデクス化されているシーケンスと異なり、辞書はキー(key)でインデクス化されています。このキーは何らかの変更...
データ型

【Python】辞書操作:要素の追加・変更

嫁ちゃん辞書に追加したり、すでにある要素の内容を更新したりできますよね。わたしそうだねー!嫁ちゃんもよくわかってきたね、優秀ださっそくいってみよー。キーが重複しないように、追加もできるので安全だね。辞書とは?辞書は他の言語にも「連想記憶(associatedmemory)」や「連想配列(associativearray)」という名前で存在することがあります。ある範囲の数でインデクス化されているシー...
データ型

【Python】辞書操作:キーと値の存在チェックと検索

嫁ちゃん辞書のキーと値の存在チェックとは、辞書に載っているかどうか確認するという感じですか?便利なような、回りくどいような。。。わたし索引のラベルが付いているかどうか確かめる感じかな。値までチェックできるなんてコンピュータのらしい機能だね。辞書とは?辞書は他の言語にも"連想記憶(associatedmemory)"や"連想配列(associativearray)"という名前で存在することがあります...
データ型

【Python】辞書操作:辞書の作成

嫁ちゃん今回は「辞書型(dictionary)」の使い方ですね。リスト型と似ているようですが、どういう違いがあるの?わたしリスト型と似ているね。リストの各要素に見出しが付いたような感じかな。PHPなどではおなじみの「連想配列」と同じような扱いができるよ。辞書とは?辞書は他の言語にも"連想記憶(associatedmemory)"や"連想配列(associativearray)"という名前で存在する...
データ型

【Python】リスト操作:要素の追加や、リスト結合の方法

概要作成したリストへの要素の追加、別のリストとの結合をする方法です。嫁ちゃんリストの要素追加や、リスト結合にはどんな方法があるの?わたしリストへの要素追加にはリストのメソッド「append」「insert」や「+演算子」「スライス」で実現することができるよ。リストの結合はリストのメソッド「extend」や「+演算子」で簡単に結合することができるね。リストへの要素の追加コードlist=#要素の追加(...
環境構築

【Python】環境構築:Pythonの venv を使って仮想環境を作成する

はじめにvenvは、Pythonに組み込まれているツールでシンプルな機能で仮想環境を簡単に構築できます。Pythonのインストールが完了してるのことが前提になっています。この仮想環境は、バージョンが異なる環境をそれぞれ作り、モージュール等の管理ができるので、Pythonがインストールした以降は、仮想環境を構築するクセをつけておいた方が幸せになれると思います。環境使用OSmacOSCatalinaバ...
ファイル操作

【Python】ファイル操作:ファイルをコピーする(copyfile, copy, copy2)

はじめにshutilモジュールのcopyfile,copy,copy2を使用し、ファイル一覧を取得します。copyfile関数を使ったファイルコピーshutil.copyfile(src,dst,*,follow_symlinks=True)dstは書き込み可能でなければなりません。そうでない場合、OSError例外を送出します。dstがすでに存在する場合、そのファイルは置き換えられます。srcが...
データ型

【Python】リスト操作:リストを作成する

概要リストの作成・初期化について空のリストを作成コードlist=[]print(list)実行結果[]初期値を指定してリストを作成コードlist=print(list)print(len(list))#<--要素の個数を出力実行結果5初期値(多次元)を指定してリストを作成コードlist=,,,]print(list)print(len(list))#<--1次元目の要素数を出力print(len(...
日時操作

【Python】日時操作:処理にかかる時間を計測する

コードimporttime#計測開始timeStart=time.time();#ここに処理を記述time.sleep(1)#計測終了timeEnd=time.time();print(str(timeEnd-timeStart)+'秒');実行結果1.004930019378662秒
文法

【Python】三項演算子の書き方

三項演算子の書き方用法条件が真の時の値if条件else条件が偽の時の値コードflag=Trueprint('AAA'ifflag==Trueelse'BBB')flag=Falseprint('AAA'ifflag==Trueelse'BBB')結果AAABBBおわりに三項演算子を使えばif文が一行で書けますが、あまり複雑な比較などに...
文字列操作

【Python】文字列操作:print文の出力で改行されないようにする

はじめにprint文で出力する場合、デフォルトで改行されてしまいますが、print文に「end=''」を付けると改行されなくなります。文字列連結を使用して「改行」をなくすという方法でも可能ですね。環境使用OS:macOSCatalinaバージョン10.15.1Python:バージョン3.8.0コードprint('aaa'end='')#end=''を...
環境構築

【Python】Raspberry PiにApache2をインストールしてHTMLを出力

はじめにRaspberryPi3にApacheをインストールする手順を記述します。ローカルWEBサーバとして稼働させます。RaspberryPiにPythonをインストールする方法はこちらの記事を参考にしてください。作業環境RaspberryPi3ModelBRASPBIAN8.0jessiePython3.8.0Apacheのインストール$sudoapt-getupdate$sudoapt-ge...
Python

【Python】環境構築:JupyterLab をインストールしてみよう

JupyterLabとは?JupyterLabはJupyterNotebookの次世代インターフェースです。元は「IPythonNotebook」という「Python」専用の開発環境でしたが、今では数多くのプログラミング言語に対応したオープンソースソフトウェアです。JupyterLabを使用するには「ローカルPC」にインストールする方法と、インターネットに接続した環境でブラウザを使用する方法があり...