Pythonの基盤を統合する(3)

Pythonファンデーションを統合
3、リスト

「Python入門」の関連コースでは、Pythonの4つの主要なデータ構造であるリスト、タプル、辞書、セットについて学習します。その中で、リストは最も一般的に使用され、最も柔軟なデータ構造であり、リストの概念と操作についての基本的な理解もあります。今日は、これらの最も基本的な基本的な知識を一緒に確認してから、ケースを使用します。リストが実際のアプリケーションでどのように使用されているかを確認しますか?

(1)最初に確認

1、 リストの概念

Pythonのリスト(リスト)は、順序付けられたオブジェクトの柔軟なコレクションです。

1、 リストには任意の種類のオブジェクトを含めることができ、ネストすることもできます。リストには、オブジェクトの1つとして別のリストを含めることができます。

2、 リストには可変オブジェクトが含まれており、リアルタイムの変更(適切な変更)をサポートしています。

3、 リストは必要に応じて増減できます。

4、 リストの助けを借りて、スクリプトを介して任意の複雑なデータ情報をほぼ作成および処理できます。

**リストは非常に重要であり、アプリケーションは非常に一般的です。 ****

2、 リストの作成方法

カンマ区切りのオブジェクトを角括弧のペアに入れると、リストが作成されます。

list1 = [1, 2, 3, 4, 5 ]

list2 = ['a', 'b', 'c', 'd']

list3 = []#空のリストを定義する

list4 = [1、]#単一のアイテムのみ

PS:リストが変数名に割り当てられると、基本的にリストオブジェクトと変数名の間に参照が作成されます。

3、 リストの値にアクセスします

(1)インデックスを使用してリスト内の値にアクセスします

list1 = ['a', 'b', 'c', 'd', 'e']

list1[1]

' b'

(2)スライスを使用してリスト内の値にアクセスします

list1 = ['a', 'b', 'c', 'd', 'e']

print (list1[1:3])

[' b', 'c',]

4、 リストの更新

(1)インデックスを介して、指定した添え字の値を直接再割り当てします。

(2)append()メソッドを使用して、リストの最後に新しい項目を追加します。

(3)delステートメントを使用して、インデックスで指定された添え字を持つアイテムを削除します。

list1 = ['a', 'b', 'c', 'd', 'e']

list1[3] = 'f'

print(list1)

[' a', 'b', 'c', 'f', 'e']

list1.append('d')

print(list1)

[' a', 'b', 'c', 'f', 'e', 'd']

del list1[2]

print(list1)

[' a', 'b', 'f', 'e', 'd']

5、 リスト操作機能

len(['a'、 'b'、 'c'、 'd'、 'e'])#リストの長さを取得します

5

[' a '、' b '、' c '、' d '、' e '] + [' f '、' g '、' h ']#リストの組み合わせ(追加)

[' a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']

[' a '、' b '、' c '] * 2#list繰り返し

[' a', 'b', 'c','a', 'b', 'c']

3 [1,2,3] #in演算子で、要素が存在するかどうかを判断します

True

[1,2,3] #Iteration(traversal)のxの場合

1 2 3

max([1,2,3,4,5])#リストの最大値を取得する

5

min([1,2,3,4,5])#リストの最小値を取得する

1

range(5)#連続する整数のリストを作成する

[0,1,2,3,4]

PS:プラス記号+の両側はリストでなければなりません。リストと文字列を一緒に追加することはできません。

6、 リスト操作方法

(1)、list.append(obj):リストの最後に新しいオブジェクトを追加します。

(2)、list.count(obj):要素がリストに表示される回数をカウントします。

(3)、list.index(obj):リストから特定の値の最初に一致するアイテムのインデックス位置を見つけます。

(4)、list.insert(index、obj):オブジェクトをリストに挿入します(指定されたインデックス位置の前)。

(5)、list.pop(obj = list [-1]):リストから要素(デフォルトでは最後の要素)を削除し、要素の値を返します。

(6)、list.remove(obj):リスト内の値の最初の一致を削除します。

(7)、list.reverse():元のリストの逆の配置。

(8)、list.sort([func]):元のリストを並べ替えます。

(9)、list.extend(seq):リストの最後に別のシーケンス値を追加します。

文字列のシーケンスを追加するときの状況に注意してください:

[1,2,3]. extend(‘xyz’)

[1,2,3, ’x’,’y’,’z’]

(2)、ケースアプリケーション

次の表は、企業の従業員評価フォームです

従業員ID 仕事の経験 給与等級 出席率 残業 パフォーマンス
1001 3 5 100 16 50000
1002 1 1 80 0 3000
1003 2 3 90 10 23000
1004 4 6 95 20 45000
1005 5 7 100 30 65000

パフォーマンスの評価とボーナスの計算の過程で、さまざまな評価項目の重みに応じて最終的なパフォーマンスボーナスを計算する必要があります。計算ルールは次のとおりです(合理的であると仮定)。

従業員ボーナス=パフォーマンス* [(勤続年数/ 30)* 0.2 +(給与等級/ 12)* 0.3 +(出席率/ 100)* 0.3 +(残業数/ 120)* 0.2] / 10

では、Pythonを使用してこのような給与管理システムを開発する場合、この問題が発生した場合、Pythonプログラムはこのデータをどのように処理し、各従業員のボーナスを最速で計算する必要がありますか?

このような要求に直面した場合、プログラマーとして、次のように考える必要があります。

1、 アプリケーションシステムとして、私たちが作成したプログラムは、今月この5人のボーナスを計算することではありませんが、ルールに従って、毎月各人のボーナスを計算するために使用できます。

2、 1人の完全な情報でその人のボーナス額を計算でき、全員のアルゴリズムは同じです。次に、データベース内の(販売)従業員の総数に従って繰り返すだけで、全員のボーナスを計算できます。

3、 各人の完全なデータ情報がリストを構成し、さまざまなインデックス値が1つのデータ項目を表し、その人のボーナスを計算するために使用できます。

# ステップ1:データベースのデータを読み取る

従業員データを保存するための空のリストを作成する

user_info_table = []

データを読み、リストに追加します

user_info_table.append([1001,3,5,100,16,50000])

user_info_table.append([1002,1,1,80,0,3000])

user_info_table.append([1003,2,3,90,10,23000])

user_info_table.append([1004,4,6,95,20,45000])

user_info_table.append([1005,5,7,100,30,65000])

**# ステップ2:要素が従業員IDとボーナスのタプルで構成される新しいリスト。 ****

user_reward_list = []

**# 3番目のステップ:従業員データテーブルをループで繰り返し、各従業員のボーナスを計算します。 ****

forループの繰り返しを使用して、すべての従業員データをトラバースします

for x in user_info_table:

user_id = x [0]#従業員IDを取得

報酬= x [5] * [(x [1] / 30)* 0.2 +(x [2] / 12)* 0.3 +(x [3] / 100)* 0.3 +(x [4] / 120)* 0.2] / 10#ボーナスを計算する

user_reward =(user_id、reward)#タプルを作成する

user_reward_list.appned(user_reward)#リストにタプルを追加する

従業員ボーナスを表示

for x in user_reward_list: print(x)

(1001, 2358.50)

(1002, 81.5)

(1003, 862.43)

(1004, 2226.15)

(1005, 3627.00)]

どうですか?

一見複雑な問題、

リストをうまく利用すると、

情報処理、

とてもシンプルになります!

Recommended Posts

Pythonの基盤を統合する(4)
Python(7)の基盤を統合する
Python(5)の基盤を統合する
Pythonの基盤を統合する(3)
Pythonの基盤を統合する(2)
「Pythonの基盤を統合する」(1)
pythonでのwheelの使用法
Pythonは中国語の4つの車輪を処理します
地主取引のPythonシミュレーション
Pythonの用途は何ですか
Python文字列プーリングの前提
Python3.8の新機能の秘密
Pythonの父がMicrosoftに加わる
python accesshdfsの操作
pythonでのタプルの使用法
pythonを実行するメソッドを終了します
pythonでのrbの意味を理解する
Pythonはスタックの構造を実装できますか?
pythonインタラクティブモードの基本を学ぶ
pythonの必須パラメーターは何ですか
pythonの下部にあるロジスティック回帰
Python3クローラーでのAjaxの使用
PythonはTowerofHanoiゲームを解決します
pythonの複数のバージョンの競合を解決します
python変数の範囲は何ですか
Pythonは分数シーケンスの合計を実装します
Pythonの基礎を学ぶ2日間
python3のピップパスはどこにありますか
Python言語の本質:Itertoolsライブラリ
2.3Python言語の基盤
python言語の利点は何ですか
2.1 Pythonインタープリター(pythonインタープリター)
python3はマスク描画の機能を実現します
python開発の見通しは何ですか
pythonの関数本体は何ですか
pythonインポートライブラリの特定の方法
pythonの複数のバージョンの競合を解決します
Pythonは学生管理システムの開発を実現します
PythonはDoudizhuでカードのシャッフルを実装します
pythonでのリストの意味と使用法
起動エラーを実行しているpythonの問題を解決します
python辞書の値を変更できますか?
Pythonはスネークゲームのソースコードを実装しています
Pythondecimalモジュールの使用法の詳細な説明
27歳でパイソンを学ぶのはどうですか?
ubuntuでpythonをアンインストールした結果、非常に
Pythonは釣りマスターのゲーム実装を書きます
Python構文の基本
Pythonの基本構文
Pythonの基礎知識(1)
pythonのPrettytableモジュール
09.Python3の共通モジュール
[898] pythonは2つのリストの共通部分を取得します|ユニオン|違い
Python関数パラメータ分類の原理の詳細な説明
Python2とPython3の違いの簡単な要約
Pythonタイマースレッドプールの原理の詳細な説明
pythonのコンパイルとsslのインストールの問題を解決します
Pythonインターフェース開発の実装手順の詳細な説明
pythonはどのように辞書のキーを呼び出しますか
Pythonはスキンのフルセットをクロールします
Pythonでのパッケージの導入を理解する方法