Pythonの基礎知識(1)

1つは、コーディング標準

PEP-8コーディング標準

Python拡張提案:Python改善計画

Guidoの重要なポイントの1つは、コードが書き込みよりも読み取り用であるということです。コーディング標準は、Pythonコードの読みやすさを向上させることを目的としています。

スタイルガイドは一貫性を強調しています。プロジェクト、モジュール、または機能の一貫性を保つことが重要です。

第二に、文法仕様

1.1、 コメント

いわゆるコメントは、プログラムに説明を追加することであり、プログラムの読みやすさを大幅に向上させることができます。コメントの内容は実際に実行されるプログラムではなく、補助的な説明として機能します。

1行のコメント

#で始まり、#の右側のすべてが説明として使用されます

# 私はコメントです、あなたはそれにいくつかの機能の説明を書くことができます。
print('hello world')

複数行のコメント

3つの引用符、3つの一重引用符、または3つの二重引用符を使用します

'''
私は複数行のコメントです。関数の説明を何行も書くことができます
  これが私が指摘したことです
  ハハハ。 。 。
'''

"""
私も複数行のコメントです、バラバラ。 。
"""

1.2、 インデント

インデントのレベルごとに4つのスペースを使用します

Pythonはコードを整理するために {}を使用せず、完全にインデントに依存しているため、インデントの形式は非常に重要です。

インデントには4つのスペースを使用し、 tabを使用せず、 tabとスペースを混在させないでください。

スペースを使用する場合は、常に4つのスペースを使用し、他のスペースは使用できません。そうしないと、構文が間違っています。

開発ツールの「タブ」を4スペースに変更することをお勧めします。

Sublimeは次のように設定されます。さらに、 pycharmはデフォルトで tabを4つのスペースに置き換えました

# 左括弧を揃える
foo =long_function_name(var_one, var_two,
       var_three, var_four)

# 冒頭の括弧を揃えないでください。ただし、次のコンテンツと区別するために、インデントのレイヤーを追加してください。
def long_function_name(
  var_one, var_two, var_three,
  var_four):print(var_one)

# 吊り下げ式のくぼみは、くぼみの層を追加する必要があります.
foo =long_function_name(
 var_one, var_two,
 var_three, var_four)

注意:

括弧内に垂直の暗黙のインデントまたはハンギングインデントを使用します。後者の場合、最初の行にパラメーターを含めてはならず、後続の行をインデントする必要があることに注意してください。

1.3、 セミコロン

Pythonでは、セミコロン( ;)を厳密に使用する必要はありません。

理論的には、1行に1つのコードを配置する必要があります。コードの各行の後に、セミコロン ;を追加することも、セミコロン ;を追加しないこともできます。

1行に複数行のコードを配置しないようにしてください。1行に配置する場合は、セミコロンを追加してそれらを区切る必要があります。

1.4、 行の長さ

各行は80文字を超えません(最大行幅は79文字であり、ドキュメント文字列やコメントなどの長いテキストブロックの場合、行の長さは72文字に制限する必要があります)。

以下の場合を除きます。

  1. 長いインポートモジュールステートメント
  2. コメント内のURL

回線の接続にバックスラッシュを使用しないでください。テキスト文字列が1行に収まらない場合は、括弧を使用して暗黙的な行連結を実現できます。

x =('これは非常に長い非常に長い非常に長い非常に長い''非常に長い非常に長い非常に長い非常に長い非常に長い非常に長い文字列')

1.5、 空白行

2つの空白行は、最上位の関数とクラスの定義を区切ります。クラスのメソッド定義は、1行の空白行で区切られます。必要に応じて、余分な空白行を使用してさまざまな機能グループを区切ることができますが、慎重に使用する必要があります。必要に応じて、関数内のさまざまなロジックブロックを区切るために余分な空白行を使用できますが、慎重に使用する必要があります。

###1.6、 ソースファイルのエンコーディング

コアPythonで公開されたコードは、常にUTF-8(Python 2ではASCII)を使用する必要があります。

# Python推奨
#- *- coding:utf-8-*-
# 簡略化された書き込み
# encoding: utf-8

Python 3(デフォルトのUTF-8)にはエンコーディング宣言を含めないでください。

1.7、 1行でインポート

import os
import sys
from subprocess import Popen, PIPE

インポートは常にファイルの先頭、モジュールのコメントとdocstringの後、モジュールのグローバル変数と定数の前にあります。

インポート順序は次のとおりです。標準ライブラリのインポート、関連するサードパーティライブラリ、ローカルライブラリ。各グループのインポートの間には空白行が必要です。

ワイルドカードのインポートは禁止されています。
名前名にどの名前が存在するかが明確でなく、読者や多くの自動化ツールを混乱させるため、ワイルドカードのインポート(import *から)は避ける必要があります。

1.8、 ブラケット

行結合の実装に使用する場合を除いて、括弧を使用することをお勧めします。returnステートメントまたは条件ステートメントでは括弧を使用しないでください。ただし、タプルの前後に括弧を使用することは可能です。

括弧内のスペースは避けてください

# 括弧内のスペースは避けてください
# Yes
spam(ham[1],{eggs:2})
# No
spam( ham[1],{ eggs:2})

1.9、 スペース ###

標準のタイプ設定規則に従って、句読点の両側のスペースを使用します

1.9.1、 括弧内にスペースを入れないでください。

Yes:spam(ham[1],{eggs:2},[])

No:spam( ham[1],{ eggs:2},[])

1.9.2、 カンマ、セミコロン、コロンの前にスペースを追加しないでください。ただし、それらの後にスペースを追加する必要があります(行末を除く)。

Yes:if x ==4:
   print x, y
  x, y = y, x

No:if x ==4:
   print x , y
  x , y = y , x

1.9.3、 パラメータリスト、インデックス、またはスライスの開始括弧の前にスペースを入れないでください。

Yes:spam(1)

no:spam(1)

Yes: dict['key']= list[index]

No:  dict ['key']= list [index]

1.9.4、 バイナリ演算子の両側にスペースを追加します

割り当て(=)、比較(==、<、>、!=、<>、<=、> =、in、not in、is、is not)、ブール(and、or、not)など。算術演算についてキャラクターの両側のスペースの使い方はあなた自身の判断が必要ですが、両側は一貫している必要があります。

Yes: x ==1

No:  x<1

ただし、「=」を使用してキーワードパラメータまたはデフォルトのパラメータ値を示す場合は、両側にスペースを使用しないでください。

Yes: def complex(real, imag=0.0):returnmagic(r=real, i=imag)

No:  def complex(real, imag =0.0):returnmagic(r = real, i = imag)

複数の行の間でマークを垂直方向に揃えるためにスペースを使用しないでください。これはメンテナンスの負担になります(:、#、=などに適用されます)。

Yes:
  foo =1000  #コメント
  long_name =2  #メモを揃える必要はありません

  dictionary ={"foo":1,"long_name":2,}

No:
  foo       =1000  #コメント
  long_name =2     #メモを揃える必要はありません

  dictionary ={"foo":1,"long_name":2,}

**複合ステートメントを使用することは強くお勧めしません(複合ステートメント:同じ行に複数のステートメントを記述します)。 ****

if foo =='blah':print(100)

1.10、 識別子とキーワード

識別子は、プログラムで変数、定数、クラス、メソッド、およびパラメーターに名前を付けるときに使用される文字シーケンスです。

キーワードはPythonで予約されており、特別な意味があります。

Pythonキーワード:

and as assert breakclasscontinue def del elif else except 
exec finallyforfrom global ifinimport is lambda not or pass
print raise returntrywhilewithyield

命名規則は次のとおりです。

  1. 識別子は文字、下線、数字で構成されており、数字を開始することはできません
  2. Pythonは大文字と小文字を区別します。 aとAは完全に異なります。
  3. pythonキーワードにすることはできません。

コーディングの習慣:

  1. 名前が意味を知っているのを見て、意味のある英語の単語やフレーズを使用し、中国のピンインを決して使用しないでください。
  2. アンダースコアの命名とラクダのケースの命名
    下線:student_name
    小さなこぶ:studentName
    大きなこぶ:StudentNameTable

3つ、入力と出力

1、 出力(補足を参照)

**2、 入る ** ###

1.1、 前書き ####

入力と出力は、簡単に言えば、標準の入力からデータを取得し、データを標準の出力に出力することです。これは、インタラクティブな環境でよく使用されます。Pythonでは、input()を使用して標準のデータを入力します。

1.2、 構文フォーマット

形式:input()
機能:標準の入力データを受け入れ、
戻り値:文字列タイプを返します。 ctrl + z終了入力

1.2、 サンプルコード

任意の文字入力を待っています

input('ユーザー名を入力してください:\n')

複数のデータ入力を受け入れ、eval()関数を使用します。スペーサーはコンマである必要があります

a,b,c=eval(input())

パブリックアカウント** "FunTester" **、興味深いテスト開発、記事は学習と洞察を記録し、注意を払い、一緒に成長することを歓迎します。

Recommended Posts

Pythonの基礎知識(1)
Pythonの基本構文
Python基礎知識質問バンク
Pythonモジュールの知識の完全な分析
Pythonの基本構文(1)
Python3の基本構文
Python3.9の7つの機能
Pythonの基本的な要約
Pythonの知識ポイント
Pythonの基本的な演算子
Pythonタートルライブラリ実装の基本的な分析
Pythonの解凍に関する知識ポイントの要約
pythonでのシェル実行の知識ポイント
Pythonの基本的な構文ジェネレータ
Python3補足知識ポイント
Pythonの基本的な描画チュートリアル(1)
Pythonの高度な知識ポイント
Python関数の基礎学習
Python構文の基本
python_クローラーの基本的な学習
Pythonの基本的なデータタイプ
pythonのPrettytableモジュール
Pythonの基本的なデータタイプ
09.Python3の共通モジュール
Pythonの基本的な構文の反復
Python(7)の基盤を統合する
pythonリスト(LIST)の深い理解
Pythonのタプルの添え字
wavファイルのPython分析
Python(6)の基盤を統合する
PythonクローラーのJSの分析
2020--Python文法の一般的な知識のポイント
栄光のパイソンキング壁紙
Pythonの基本的な構文リストの作成
gomokuプログラムのPython実装
Pythonサンドボックスエスケープの分析
Python3.10のいくつかの新機能
Pythonマルチスレッドの深い理解
Pythonの基本的な描画チュートリアル(2つ)
Pythonオブジェクト指向プログラミングの分析
OpenCVインストールのPythonバージョン
Pythonの9つの機能エンジニアリング手法
python描画モジュールのmatplotlib
パラメータを渡すPythonメソッド
Pythonの基盤を統合する(3)
Python共通モジュールのコレクション
pythonでのwheelの使用法
Pythonの対数法の要約
pythonバックトラッキングテンプレートの詳細な説明
Python入門ノート[基本的な文法(上)]
Pythonイールドの使用例の分析
Python開発でのパンダの使用
Pythonプラグインメカニズムの詳細な実装
pythonシーケンスタイプの詳細な説明
IOU計算ケースのPython実装
魔法の方法とPythonの使用
Python変数スコープの詳細な理解
word2vec操作のPython予備実装
Pythonエントリーノート[基本的な文法(下記)]
Pythonは中国語の4つの車輪を処理します
情報エントロピーの例のPython計算