>시스템 튜토리얼 >리눅스 >Python 기초지식 학습

Python 기초지식 학습

PHPz
PHPz원래의
2024-08-17 07:42:32676검색

Python 기초지식 학습

Python은 동적 데이터 유형을 사용하는 해석된 객체 지향 고급 프로그래밍 언어입니다. Python은 1989년 말 Guido van Rossum에 의해 발명되었으며, 첫 번째 공개 릴리스는 1991년에 출시되었습니다. Perl 언어와 마찬가지로 Python 소스 코드도 GPL(GNU General Public License) 계약을 따릅니다.

파이썬 기능

함수는 def 키워드를 통해 정의되며 다음과 같습니다.

으아악

DocStringsdocstrings

DocStrings Docstring은 문서 프로그램을 해석하는 데 중요한 도구입니다.

으아악

*DocStrings 문서 문자열 사용 규칙 첫 번째 줄은 함수를 간략하게 설명하는 대문자로 시작하고, 두 번째 줄은 비어 있으며, 세 번째 줄은 함수에 대한 구체적인 설명입니다*

파이썬 모듈

Python 모듈(Module)은 .py로 끝나는 Python 파일로, Python 객체 정의와 Python 명령문을 포함합니다.
모듈을 사용하면 Python 코드 조각을 논리적으로 구성할 수 있습니다. 관련 코드를 모듈에 할당하면 코드를 더 유용하고 이해하기 쉽게 만들 수 있습니다. 모듈은 함수, 클래스, 변수를 정의할 수 있으며, 모듈에는 실행 가능한 코드도 포함될 수 있습니다. 로드하는 방법은 다음과 같습니다.
가져오기 방법(모두 가져옴)

으아악

참고: 가져오기를 몇 번 실행하든 모듈은 한 번만 가져옵니다. 이렇게 하면 가져온 모듈이 반복해서 실행되는 것을 방지할 수 있습니다.
from ... 가져오기 방법(일부 소개)
Python의 from 문을 사용하면 모듈의 지정된 섹션을 현재 네임스페이스로 가져올 수 있습니다. 구문은 다음과 같습니다:

으아악

from ... import* 문
모듈의 모든 콘텐츠를 가져오는 것은 권장되지 않습니다.

Python 모듈 검색 경로
모듈을 가져올 때 Python 파서는 다음 순서로 모듈 위치를 검색합니다.

현재 디렉토리
현재 디렉터리에 없으면 Python은 쉘 변수 PYTHONPATH 아래의 모든 디렉터리를 검색합니다.
둘 다 발견되지 않으면 Python은 기본 경로를 찾습니다. UNIX에서 기본 경로는 일반적으로 /usr/local/lib/python/입니다. 모듈 검색 경로는 시스템 모듈의 sys.path 변수에 저장됩니다. 변수에는 현재 디렉터리인 PYTHONPATH와 설치 프로세스에서 결정된 기본 디렉터리가 포함됩니다.

dir() 함수

함수는 정렬된 문자열 목록이며, 그 내용은 모듈에 정의된 이름입니다.
반환된 목록에는 모듈에 정의된 모든 모듈, 변수 및 함수가 포함됩니다.
특수 문자열 변수 __name__은 모듈 이름을 가리키고 __file__은 모듈의 가져오기 파일 이름을 가리킵니다.

globals() 및 locals() 함수

호출 위치에 따라 globals() 및 locals() 함수를 사용하여 전역 및 로컬 네임스페이스의 이름을 반환할 수 있습니다.
함수 내에서 locals()가 호출되면 함수 내에서 액세스할 수 있는 모든 이름이 반환됩니다. globals()가 함수 내에서 호출되면 함수 내에서 액세스할 수 있는 모든 전역 이름이 반환됩니다. 두 함수의 반환 유형은 사전입니다. 따라서 key() 함수를 사용하여 이름을 추출할 수 있습니다.

Python의 패키지

패키지는 모듈과 하위 패키지, 하위 패키지 아래의 하위 패키지로 구성된 Python 애플리케이션 환경을 정의하는 계층적 파일 디렉터리 구조입니다. 간단히 말해서 패키지는 폴더이지만 해당 폴더에는 _init_.py 파일이 있어야 하며 이 파일의 내용은 비어 있을 수 있습니다. _init_.py는 현재 폴더를 패키지로 식별하는 데 사용됩니다.
자주 사용되는 모듈

으아악 으아악 으아악 으아악
데이터 구조

파이썬에는 목록, 튜플, 사전이라는 세 가지 내장 데이터 구조가 있습니다.

목록

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.