>  기사  >  백엔드 개발  >  Python의 주요 응용 분야는 무엇입니까? 파이썬 소개

Python의 주요 응용 분야는 무엇입니까? 파이썬 소개

PHP中文网
PHP中文网원래의
2017-06-20 16:51:2314574검색

1. Pthon 소개                                                                             ~ 1989년 크리스마스 기간 동안 Guido van Rossum은 ABC 언어의 상속으로 새로운 스크립트 해석기를 개발하기로 결심하고 암스테르담에서 시간을 보내고 있었습니다

Python은 데이터 분석, 구성 요소 통합과 같은 다양한 분야에서 사용할 수 있습니다. , 네트워크 서비스, 이미지 처리, 수치 컴퓨팅 및 과학 컴퓨팅 및 기타 여러 분야. 현재 Youtube, Dropbox, BT, Quora(China Zhihu), Douban, Zhihu, Google, Yahoo!, Facebook, NASA, Baidu, Tencent 등 업계의 거의 모든 대형 및 중형 인터넷 회사에서 Python을 사용하고 있습니다. , 오토홈, Meituan et al.

현재 Python의 주요 응용 분야:

클라우드 컴퓨팅
    : 클라우드 컴퓨팅에 가장 널리 사용되는 언어, 일반적인 응용 프로그램인 OpenStack
  • WEB 개발
  • : 다수의 뛰어난 WEB 프레임워크 , Youtube, Dropbox 및 Douban을 포함하여 많은 대규모 웹 사이트가 Python으로 개발되었습니다. . . , 일반적인 WEB 프레임워크에는 Django
  • 과학 컴퓨팅, 인공 지능
  • : 일반적인 라이브러리 NumPy, SciPy, Matplotlib, Enthought 라이브러리, pandas
  • 시스템 운영 및 유지 관리
  • : 운영 및 유지 관리 인력을 위한 필수 언어
  • Finance
  • : 퀀트 트레이딩, 재무 분석, 금융 공학 분야에서 파이썬은 가장 많이 사용될 뿐만 아니라 가장 많이 사용되며, 그 중요성은 해마다 높아지고 있습니다. 이유: Python은 동적 언어로서 명확하고 단순한 언어 구조, 풍부한 라이브러리, 성숙하고 안정적이며 뛰어난 과학적 계산 및 통계 분석을 갖추고 있으며 생산 효율성이 c, c++ 및 java보다 훨씬 높습니다. 전략 백테스팅에 능숙함
  • Graphic GUI
  • : PyQT, WxPython, TkInter
  • 일부 회사의 Python 애플리케이션:

Google: Google App Engine , code.google.com, Google 어스, Google 크롤러, Google 광고 및 기타 프로젝트에서는 개발에 Python을 많이 사용합니다

  • CIA: CIA 웹사이트는 Python으로 개발되었습니다

  • NASA: 미국 항공 우주국(NASA)은 데이터를 위해 Python을 광범위하게 사용합니다. 분석 및 계산

  • YouTube: 세계 최대의 인터넷 동영상 웹사이트인 YouTube는 Python을 사용하여 개발되었습니다.

  • Dropbox: 미국 최대의 온라인 클라우드 스토리지 웹사이트로, 모두 Python으로 구현되었습니다. 매일 10억 개의 파일 업로드 및 다운로드

  • Instagram: 미국 최대 온라인 클라우드 스토리지 웹사이트 사진 공유 소셜 네트워킹 사이트, 매일 3천만 장 이상의 사진이 공유되며 모두 Python으로 개발됨

  • Facebook : 다수의 기본 라이브러리가 Python으로 구현됩니다

  • Redhat: 세계에서 가장 인기 있는 Linux 배포판 중 하나입니다. yum 패키지 관리 도구는 Python으로 개발되었습니다.

  • Douban: 회사의 거의 모든 사업이 Python을 통해 개발됩니다. Python

  • Zhihu: Python을 통해 개발된 중국 최대의 질문 및 답변 커뮤니티(외국 Quora)

  • Chunyu 박사: 국내 유명 온라인 의료 웹사이트는 Python

  • 을 사용하여 개발되었습니다. 위와 같이 Sohu, Kingsoft, Tencent, Shanda, NetEase, Baidu, Alibaba, Taobao, Tudou, Sina, Guoke 및 기타 회사와 같은 회사도 있습니다. Python을 사용하여 다양한 작업을 완료하세요.

파이썬은 어떤 언어인가요?

편집과 통역의 차이점은 무엇인가요?

Compiler

는 소스 프로그램의 모든 명령문을 기계어로 컴파일하고 바이너리 파일로 저장하므로 컴퓨터가 런타임 시 기계어로 프로그램을 직접 실행할 수 있는데 이는 매우 빠릅니다. 인터프리터

는 프로그램을 하나씩 기계어로 해석해서 컴퓨터가 실행할 뿐이기 때문에 컴파일된 프로그램만큼 실행 속도가 빠르지 않습니다.

이것은 컴퓨터가 우리가 작성한 명령문을 직접 이해하고 실행할 수 없기 때문입니다. , 기계어(이진 형식)만 이해할 수 있습니다

컴파일된 유형과 해석된 유형

컴파일된 유형

장점: 컴파일러에는 일반적으로 코드 최적화에 대한 사전 컴파일 프로세스가 있습니다. 컴파일은 한 번만 수행되고 런타임 시 컴파일이 필요하지 않기 때문에 컴파일된 언어 프로그램은 실행 효율성이 높습니다. 로케일과 독립적으로 실행할 수 있습니다.

단점: 컴파일 후 수정이 필요한 경우 모듈 전체를 다시 컴파일해야 합니다. 컴파일 시 해당 운영체제에 따라 기계어 코드가 생성되는데, 서로 다른 운영체제 간 이식 시 문제가 발생할 수 있으며, 실행 중인 운영체제 환경에 따라 서로 다른 실행 파일을 컴파일해야 합니다.

Interpreted

장점: 플랫폼 호환성이 좋고 인터프리터(가상 머신)가 설치되어 있다면 어떤 환경에서도 실행 가능합니다. 유연성이 있어 코드 수정 시 직접 수정할 수 있으며, 유지 관리를 위한 다운타임 없이 빠르게 배포할 수 있습니다.

단점: 실행할 때마다 설명을 해야 하고, 컴파일된 언어만큼 성능이 좋지 않습니다.

Python의 장점과 단점

장점:

  1. Python의 위치는 "우아함", "명확함", "단순함"이므로 Python 프로그램은 항상 단순하고 초보자가 Python을 배우기 쉽습니다. 시작하기는 쉽지만 앞으로 더 깊이 들어가면 매우 복잡한 프로그램을 작성할 수 있습니다.

  2. 개발 효율성이 매우 높습니다. Python에는 매우 강력한 타사 라이브러리가 있습니다. 기본적으로 컴퓨터를 통해 어떤 기능을 구현하려는 경우 Python 공식 라이브러리에 직접 다운로드하여 지원하면 됩니다. 기본 라이브러리를 기반으로 개발이 상위에서 수행되어 개발 주기를 크게 단축하고 바퀴를 재발명하는 것을 방지합니다.

  3. 고급 언어————Python 언어로 프로그램을 작성할 때 프로그램에서 사용하는 메모리를 관리하는 방법과 같은 저급 세부 사항을 생각할 필요가 없습니다.

  4. 이식성— ———오픈 소스 특성으로 인해 Python은 많은 플랫폼으로 이식되었습니다(다른 플랫폼에서 작동할 수 있도록 수정). 시스템 종속 기능을 주의 깊게 사용하지 않으면 모든 Python 프로그램을 수정 없이 시장에 있는 거의 모든 시스템 플랫폼에서 실행할 수 있습니다.

  5. 확장성————키가 필요한 경우 코드를 더 빠르게 실행하거나 특정 알고리즘을 비공개로 유지하면 프로그램의 일부를 C 또는 C++로 작성하여 Python 프로그램에서 사용할 수 있습니다.

  6. 임베디드 가능성——Python을 C/C++ 프로그램에 내장하여 프로그램 사용자에게 스크립팅 기능을 제공할 수 있습니다.

단점:

  1. 느림 Python의 실행 속도는 실제로 C 언어보다 훨씬 느리고 JAVA보다 느립니다. 따라서 소위 말하는 많은 전문가들이 Python 사용을 경멸하는 주된 이유이기도 합니다. 그러나 실제로 여기서 언급하는 느린 실행 속도는 대부분의 경우 사용자가 직접 인식할 수 없으며, 이는 테스트 도구의 도움을 받아 반영되어야 합니다. 예를 들어 C에서는 프로그램을 실행하는 데 0.01초가 걸립니다. 이런 식으로 C 언어는 Python보다 직접적으로 10배 빠르며 이는 매우 과장되어 있지만 일반인이 인지할 수 있는 가장 작은 시간 단위는 약 0.15-0.4이기 때문에 육안으로는 직접적으로 인지할 수 없습니다. 에, 하하. 실제로, 극도로 빠른 속도 요구 사항이 있는 검색 엔진을 작성하려는 경우를 제외하고 대부분의 경우 Python은 프로그램 속도 요구 사항을 완벽하게 충족할 수 있습니다. 물론 이 경우 C를 사용하여 구현하는 것이 좋습니다.

  2. PYTHON은 해석된 언어이고 소스 코드가 텍스트 형식으로 저장되므로 코드를 암호화할 수 없습니다. 그러나 프로젝트에서 소스 코드를 암호화해야 하는 경우에는 이것이 단점이라고 생각하지 않습니다. , 그러면 애초에 Python으로 구현해서는 안 됩니다.

  3. 스레드는 다중 CPU 문제를 활용할 수 없습니다. 이는 Python의 가장 비판적인 단점 중 하나입니다. 전역 인터프리터 잠금(Global Interpreter Lock)은 컴퓨터 프로그래밍 언어 인터프리터가 스레드를 동기화하는 데 사용하는 도구입니다. 언제든지 스레드를 동기화합니다. 단 하나의 스레드만 실행되고 있으며 Python의 스레드는 운영 체제의 기본 스레드입니다. Linux에서는 pthread이고 Windows에서는 Win 스레드입니다. 스레드 실행은 운영 체제에 의해 완전히 예약됩니다. Python 인터프리터 프로세스에는 기본 스레드와 여러 사용자 프로그램 실행 스레드가 있습니다. 멀티 코어 CPU 플랫폼에서도 GIL의 존재로 인해 멀티 스레드의 병렬 실행이 금지됩니다. 이 문제에 대한 타협 해결책에 대해서는 나중에 스레드 및 프로세스 장에서 논의할 것입니다

Python 설치

windows:

설치 패키지 다운로드:

Linux:

설치가 필요하지 않습니다. 시스템에는 Python 환경이 함께 제공됩니다. (버전 2.X가 있는 경우 3으로 업그레이드하세요.

print(

"My name is",name)

<span style="font-size: 16px">变量<br>上述代码声明了一个变量,其变量名为name,而变量name的值为:"Aaron Li"</span>

변수 정의 규칙:

<span style="font-size: 16px">1.变量名只能是 字母、数字或下划线的任意组合<br>2.变量名的第一个字符不能是数字<br>3.一些关键字不能声明为变量名:<br>  ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']<br><br></span>

<br><br>문자 인코딩 Python 인터프리터 .py 파일에 코드를 로드하면 내용이 인코딩됩니다(기본 ascill)

ASCII(American Standard Code for Information Interchange, American Standard Code for Information) Interchange)는 라틴 알파벳을 기반으로 한 컴퓨터 코딩 시스템으로 주로 현대 영어 및 기타 서유럽 언어를 표시하는 데 사용되며 최대 8비트(1바이트)로만 표현할 수 있습니다. 즉: 2**8 = 256- 1. 따라서 ASCII 코드는 최대 255개의 기호만 표현할 수 있습니다

중국어에 대하여

为了处理汉字,程序员设计了用于简体中文的GB2312和用于繁体中文的big5。

 

GB2312(1980年)一共收录了7445个字符,包括6763个汉字和682个其它符号。汉字区的内码范围高字节从B0-F7,低字节从A1-FE,占用的码位是72*94=6768。其中有5个空位是D7FA-D7FE。

 

GB2312 支持的汉字太少。1995年的汉字扩展规范GBK1.0收录了21886个符号,它分为汉字区和图形符号区。汉字区包括21003个字符。2000年的 GB18030是取代GBK1.0的正式国家标准。该标准收录了27484个汉字,同时还收录了藏文、蒙文、维吾尔文等主要的少数民族文字。现在的PC平台必须支持GB18030,对嵌入式产品暂不作要求。所以手机、MP3一般只支持GB2312。

 

从ASCII、GB2312、GBK 到GB18030,这些编码方法是向下兼容的,即同一个字符在这些方案中总是有相同的编码,后面的标准支持更多的字符。在这些编码中,英文和中文可以统一地处理。区分中文编码的方法是高字节的最高位不为0。按照程序员的称呼,GB2312、GBK到GB18030都属于双字节字符集 (DBCS)。

 

有的中文Windows的缺省内码还是GBK,可以通过GB18030升级包升级到GB18030。不过GB18030相对GBK增加的字符,普通人是很难用到的,通常我们还是用GBK指代中文Windows内码。

 

显然ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536,<br>注:此处说的的是最少2个字节,可能更多

UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存...

所以,python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill) 

 

注释

单行注释: #被注释内容

多行注释: """被注释内容""" 或者 '''被注释内容'''

 

用户交互

 

<br>
# Author:Aaron LI<br><br>username = input("username:") <br>password = input("password:")<br>print (username,password)

 字符串拼接

#namne = input("name")<br>#age = input("age")<br>#job = input("job")<br>#salary = input("salary")<br>#info = """<br>#---------- into of %s ---------<br>#name:%s<br>#age:%s<br>#job:%s<br>#salary%s<br>#""" % (namne,namne,age,job,salary) %占位符跟上边的变量拼接起来<br>#print(info)<br># % DAY 1(10) 10:50处<br><br><br>#name = input("name")<br>#age = int(input("age"))<br>#job = input("job")<br>#salary = input("salary")<br><br>#info = """<br>#    ---------- into of %s-----------------<br>#    name:%s<br>#    age:%d<br>#    job:%s<br>#    salary:%s<br>#""" % (name,name,age,job,salary)<br>#print (info)<br><br>#推崇用此方法<br>name = input("name")<br>age = input("age")<br>job = input("job")<br>salary = input("salary")<br>info = """<br>    ----------info of {_name} --------------<br>    name:{_name}<br>    age:{_age}<br>   job:{_job}<br>    salary:{_slary}<br>""" . format(_name=name,<br>_age=age,<br>_job=job,<br>_slary=salary)<br>print(info)<br>

 

将密码设为密文输出

利用getpass模块

import getpass<br>username = input("username:")<br>password = input("password:")<br>
print(username,password)

#在pycharm中无法输出测试

 

表达式 if......else

提示输入用户名和密码,验证用户名和密码

如果成功,则输出欢迎

如果错误,则输出,用户名和密码

# Author:Aaron LI<br><br>import getpass<br><br>_username = 'lixiguang'<br>_password = 'abc123'<br>username = input("username:")<br>password = input("password:")<br><br>if _username == username and _password == password:<br>print("Welcome  user {name} login......".format(name=username))<br>else:<br>print("Invalid username or password!")

猜年龄

在程序中预先设定好年龄,启动程序后让用户猜测,根据用户的输入提示输入的正确与否,如果错误则给出提示

# Author:Aaron LI<br><br>age_of_lxg = 25<br>guess_age = int(input("guess age:"))<br><br>if age_of_lxg == guess_age:<br>print("Input correct!")<br>elif age_of_lxg > guess_age:<br>print("The input digit is too large")<br>else:<br>print("The input numbers are too small")

表达式for循环

for i in range(0,15):<br>print("Aaron",i)<br><br>
for i in range(0,19,2):<br>print("loop",i)  #2 每执行一个跳一个 (步长)
 <br>
# Author:Aaron LI<br>age_of_lxg = 28<br>for i in range(3):<br> guess_age = int(input("guess_age:") )<br>if guess_age == age_of_lxg:<br>print("yes,you got it.")<br>break<br> elif guess_age > age_of_lxg:<br>print("thine smaller....")<br>else:<br>print("think bigger!")<br>else:<br>print("you have tried too times..")
 <br>

表达式while循环

 

count = 0<br>while True:<br>print("count:",count)<br>    count +=1 #count = count +1<br><br>
# Author:Aaron LI<br><br>age_of_lxg = 28<br>count = 0<br>while count < 3:
guess_age = int(input("guess age:"))
if guess_age == age_of_lxg:
print("yes,you got it.")
break
elif guess_age > age_of_lxg:<br>print("think smaller...")<br>else:<br>print("think bigger...")<br>    count +=1<br>    if count == 3:<br>        coutine_confim = input("do you want to keep guessing.....?")<br>if coutine_confim != 'n':<br>            count = 0

 <br>

break和continue<br>

<br>
count = 0<br>while True:<br>print("count:",count)<br>    count +=1 #count = count +1<br>    if count == 1001:<br>break  #满足条件结束整个循环
<br>
for i in range(0,10):<br>if i <3:<br>print("loop",i)<br>else :<br>continue  #跳出本次循环,进入下次循环<br>    print("haha.....")
 <br>

위 내용은 Python의 주요 응용 분야는 무엇입니까? 파이썬 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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