Python学习—第一天

一丶Python介绍

python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。

Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。

目前Python主要应用领域:

  • 云计算: 云计算最火的语言, 典型应用OpenStack
  • WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django
  • 科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas
  • 系统运维: 运维人员必备语言
  • 金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测
  • 图形GUI: PyQT, WxPython,TkInter

二丶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.01s,用Python是0.1s,这样C语言直接比Python快了10倍,算是非常夸张了,但是你是无法直接通过肉眼感知的,因为一个正常人所能感知的时间最小单位是0.15-0.4s左右,哈哈。其实在大多数情况下Python已经完全可以满足你对程序速度的要求,除非你要写对速度要求极高的搜索引擎等,这种情况下,当然还是建议你用C去实现的。
    2. 代码不能加密,因为PYTHON是解释性语言,它的源码都是以名文形式存放的,不过我不认为这算是一个缺点,如果你的项目要求源代码必须是加密的,那你一开始就不应该用Python来去实现。
    3. 线程不能利用多CPU问题,这是Python被人诟病最多的一个缺点,GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。关于这个问题的折衷解决方法,我们在以后线程和进程章节里再进行详细探讨。
时间: 2024-09-30 04:31:02

Python学习—第一天的相关文章

python 学习第一天

python 学习了好久,发现还是个小白,python还是不会用,从今天起每天学写一点小程序,做个打不死的小强. 相关知识:列表,字典 #!/usr/bin/env python people = { 'yong':{'phone':'123', 'addr':'Shang hai' }, 'bu':{'phone':'456', 'addr':'Wu han' }, 'yan':{'phone':'789', 'addr':'He nan' } } lables = {'phone':'pho

Python学习第一弹——Python环境搭建

一.Python简介: Python,是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.Python语法简洁而清晰,具有丰富和强大的类库.它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起.常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用

python学习第一弹:爬虫(抓取博客园新闻)

前言 说到python,对它有点耳闻的人,第一反应可能都是爬虫~ 这两天看了点python的皮毛知识,忍不住想写一个简单的爬虫练练手,JUST DO IT 准备工作 要制作数据抓取的爬虫,对请求的源页面结构需要有特定分析,只有分析正确了,才能更好更快的爬到我们想要的内容. 打开博客园任何一个新闻页面,比如https://news.cnblogs.com/n/570973/,思路是通过这个源页面,并且根据页面中的“上一篇”.“下一篇”等链接,源源不断的爬取其它新闻内容. 浏览器访问https://

python学习-第一天

开始学习python,开始记录. 第一个小程序:登陆系统 功能:1.通过文件名和密码导入用户名和密码~ 2.用户输入用户名和密码 3.将用户输入的用户名进行比对,先判断用户名是否在黑名单里面,如果在黑名单里面就直接退出:如果不在黑名单里面就继续输入密码,然后将用户名和密码与正确的用户名密码匹配,匹配通过则显示登陆成功,匹配失败则提示重新输入密码,密码输入错误三次退出系统,锁定用户名,加入黑名单. 用到的知识点:1.文件读写操作.纪要:打开文件,只读用r,打开读且写入内容,用w+或者r+,w+是追

Python学习第一天

一.Python的简介 1.什么是python? Python(发音:[ 'paiθ(?)n; (US) 'paiθ?n ]),是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定.这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所有的操作系统中运行. 特点: ①可扩充性.新的内置模块(module)可以用C 或 C++写成,而我们也可为现成的模块加上Python的接口: ②清晰的语言.因为它的作者在设计它的时

python学习第一部分

人生苦短,快学python!! 从零开始学习python,开启漫漫学习之路. 一 .python的介绍 python是一门解释型语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU General Public License)协议.Python语法简洁而清晰,具有丰富和强大的类库. 由上图可见,Python整体呈上升趋势,反映出Python应用越来越广泛并且也逐渐得到业内的认可!!! Python可以应用于众

Python学习第一天----计算机基础

一.学习计算机基础的目的 再高级的编程语言都是运行在操作系统之上的,而操作系统又是运行在硬件基础之上.所以在开始学习编程之前需要深刻的了解并熟知计算机的基础知识.包括硬件基础及操作系统基础. 二.计算机硬件发展史 计算机的定义:是现代用于高速计算的一种电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能. 发展史: 原型或者说灵感起源于中国 1946年2月14日情人节这天,世界上第一台电子计算机"电子数字积分计算机ENIAC"在美国宾夕法尼亚大学问世. 电子管时代--

PYTHON学习---第一部分

第一个程序 1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 # Author:xll 4 print("Hello World!") 在linux上需要用#!/usr/bin/env python告诉系统用什么解释器来执行此段代码 # -*- coding: utf-8 -*-则是指示此段代码的编码格式,一般作为固定格式 变量 1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3

Python 学习第一弹:基本数据类型

python提供了很多数据结构,不过其很多操作都是朴素操作,速度慢时间复杂度参见:https://wiki.python.org/moin/TimeComplexity 可遍历(for): list, string, 判断元素是否存在(in): list, string, tuple 合并: list, string 元素个数(len()) 元素和(sum()) string(字符串) word = 'banana' 特点: 不可变的列表 list(列表) a = [1, 'abc', [a,

第二模块的python学习第一天记录

一.关于装饰器 #权限校验.用户认证.日志记录.性能测试.事务处理.缓存等都是装饰器的绝佳应用场景 1 #!/usr/bin/env python 2 #-*- coding:utf-8 -*- 3 4 __author__ = 'andylin' 5 __date__ = '17-8-1 下午9:49' 6 7 8 9 import time 10 11 12 def timer(func): 13 def deco(*args,**kwargs): 14 start_time = time.