Pythonの基礎知識学習

PHPz
PHPzオリジナル
2024-08-17 07:42:32663ブラウズ

Pythonの基礎知識学習

Python は、解釈されたオブジェクト指向の動的データ型の高級プログラミング言語です。 Python は 1989 年末に Guido van Rossum によって発明され、最初の公開リリースは 1991 年にリリースされました。 Perl 言語と同様に、Python ソース コードも GPL (GNU General Public License) 契約に従います。

Python関数

関数は def キーワードを通じて

の形式で定義されます リーリー

DocStringsdocstrings

DocStringsドキュメント文字列は、ドキュメント プログラムを解釈するための重要なツールです。

リーリー

*DocStrings ドキュメント文字列の使用規則 最初の行は関数を簡単に説明するために大文字で始まり、2 行目は空白、3 行目は関数の具体的な説明です*

Pythonモジュール

Python モジュール (モジュール) は .py で終わる Python ファイルで、Python オブジェクト定義と Python ステートメントが含まれています。
モジュールを使用すると、Python コード スニペットを論理的に整理できます。関連するコードをモジュールに割り当てると、コードがより使いやすく、理解しやすくなります。モジュールは関数、クラス、変数を定義でき、モジュールには実行可能コードを含めることもできます。読み込み方法は次のとおりです:
import メソッド (すべて紹介)

リーリー

注意: インポートを何回実行しても、モジュールは 1 回だけインポートされます。これにより、インポートされたモジュールが何度も実行されるのを防ぎます。
from ~インポート方法(一部紹介)
Python の from ステートメントを使用すると、指定したセクションをモジュールから現在の名前空間にインポートできます。構文は次のとおりです:

リーリー

from ... import* ステートメント
モジュール内のすべてのコンテンツをインポートすることはお勧めできません。

Python モジュール検索パス
モジュールをインポートすると、Python パーサーは次の順序でモジュールの場所を検索します:

現在のディレクトリ
現在のディレクトリにない場合、Python はシェル変数 PYTHONPATH の下にあるすべてのディレクトリを検索します。
どちらも見つからない場合、Python はデフォルトのパスを調べます。 UNIX では、通常、デフォルトのパスは /usr/local/lib/python/ です。モジュール検索パスは、システム モジュールの sys.path 変数に保存されます。変数には、現在のディレクトリ、PYTHONPATH、およびインストール プロセスによって決定されるデフォルトのディレクトリが含まれます。

dir()関数

Function ソートされた文字列のリスト。その内容はモジュールで定義された名前です。
返されるリストには、モジュール内で定義されているすべてのモジュール、変数、関数が含まれます。
特殊な文字列変数 __name__ はモジュールの名前を指し、 __file__ はモジュールのインポート ファイルの名前を指します。

globals() 関数と locals() 関数

呼び出される場所に応じて、globals() 関数と locals() 関数を使用して、グローバル名前空間とローカル名前空間の名前を返すことができます。
locals() が関数内で呼び出された場合、関数内でアクセス可能なすべての名前が返されます。 globals() が関数内で呼び出された場合、関数内でアクセス可能なすべてのグローバル名が返されます。 どちらの関数の戻り値の型も辞書です。したがって、keys() 関数を使用して名前を抽出できます。

Python のパッケージ

パッケージは階層的なファイル ディレクトリ構造であり、モジュールとサブパッケージ、およびサブパッケージの下のサブパッケージで構成される Python アプリケーション環境を定義します。簡単に言えば、パッケージはフォルダーですが、_init_.py ファイルがフォルダー内に存在する必要があり、このファイルの内容は空であってもかまいません。 _init_.py は、現在のフォルダーをパッケージとして識別するために使用されます。
よく使用されるモジュール

リーリー リーリー リーリー リーリー
データ構造

Python には、リスト、タプル、辞書という 3 つの組み込みデータ構造があります。

リスト

list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。

列表是一种可变的数据类型。

python listname = [item1.item2,item3] listname.sort() listname.append(item4) del listname[0]
元组(Tuples)

元组与列表极其类似,只不过元组和字符串一样是不可变 即使你不能修改元组。元组通过圆括号中用逗号分割的项目定义。

元组最通常的用法是用在打印语句中,下面是一个例子:

print '%sis %d' % (name,age)

字典(Dictionary)

字典有键和值二元组,键是不可变的对象,字典的值可以任意。键值对在字典中以这样的方式标记

d ={key1:value1,key2:value2}

序列(Sequence)

序列是列表,元组,字符串的总称,它的特点在于两个操作--索引操作符 (indexing/subscription)、切片操作符(slicing)

list[-1],list[0],list[1],list[3]
list[0;2] #0到1的 不包含2
list[2:] #2以后
list[:] #全部
引用

当你创建一个对象并给它赋一个变量的时候,这个变量仅仅引用那个对象,而不是表示那个对象本身
!也就是说,变量名只是指向计算机中存储那个对象的内存。这被称作名称到对象的绑定。

```python
#!/usr/bin/python
#-- coding=utf-8 --
print 'Simple Assignment'
shoplist = ['apple','mango','carrot','banana']
mylist = shoplist #简单的赋值 只是引用变量名
del shoplist[0]
del mylist[0]
print 'shoplist is',shoplist
print 'mylist is',mylist

print 'Coping by making full slice'
mylist = shoplist[:]
del mylist[0]
print 'shoplist is',shoplist
print 'mylist is',mylist

```

Simple Assignment

shoplist is ['carrot', 'banana']

mylist is ['carrot', 'banana']

Coping by making full slice

shoplist is ['carrot', 'banana']

mylist is ['banana']

很明显,普通引用只是名称的绑定,3而只有完整切片才是真正意义上的复制。所以我们在简单引用后一定要考虑是否可以更改,因为操作可能影响到源对象。

面向对象编程

注意在python中即使是整型也会被视为对象,这与C++和Java(1.5以前),在它们那儿整数是原始的内置类型。
在python中秉承一切皆对象的原则。
字段(Filed):属于某个对象或类的变量
方法(Method):属于类的函数
属性(Attribute):上者综合
-self
类方法与普通函数的区别所在,将类函数参数项前面用self修饰。与C++中this作用类似。

python class Person: def say_hi(self): print('Hello,how are you?')

Python中 特殊意义的类函数名称
init 方法
该方法会在类的对象被实例化(Instantiated)时立即运行。这一方法可以用作初始化操作。

python class Person: def __init__(self,name) self.name = name def say_hi(self): print('Hello,my name is',self.name) p = Person('Swaroop') p.say_hi()

特殊变量命名方法
1、 _xx 以单下划线开头的表示的是protected类型的变量。即保护类型只能允许其本身与子类进行访问。若内部变量标示,如: 当使用“from M import”时,不会将以一个下划线开头的对象引入 。
2、 __xx 双下划线的表示的是私有类型的变量。只能允许这个类本身进行访问了,连子类也不可以用于命名一个类属性(类变量),调用时名字被改变(在类FooBar内部,__boo变成_FooBar__boo,如self._FooBar__boo)

3、 __xx__定义的是特列方法。用户控制的命名空间内的变量或是属性,如init , __import__或是file 。只有当文档有说明时使用,不要自己定义这类变量。 (就是说这些是python内部定义的变量名)

在这里强调说一下私有变量,python默认的成员函数和成员变量都是公开的,没有像其他类似语言的public,private等关键字修饰.但是可以在变量前面加上两个下划线"_",这样的话函数或变量就变成私有的.这是python的私有变量轧压(这个翻译好拗口),英文是(private name mangling.) **情况就是当变量被标记为私有后,在变量的前端插入类名,再类名前添加一个下划线"_",即形成了_ClassName__变量名.**

以上がPythonの基礎知識学習の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。