03 Python的那些事
目录:
1) 创始人以及重要发展历程
2) Python语言的特点
3) TIOBE排名
4) 解释器
5) Python后缀名
6) 变量规则和约定
7) 常量
8) 注释
9) 缩进
10) PyCharm使用秘籍
11) Win10下安装Python2和Python3
1,创始人,Guido Van Rossum,中国程序员亲切地称他为‘龟叔’。
1989年在荷兰阿姆斯特丹为了打发圣诞节假期,决定开发一门新的介于C与Shell之间的解释型程序,
作为ABC语言的一种继承,并以他最喜欢的一部BBC喜剧《巨蟒剧团之飞翔的马戏团》为基础将此语言命名为Python。
1991,第一个编译器诞生,由C语言开发
1994,Python 1.0
1999,Python支持Web开发
2004,Web框架Django
2008,Python 2.6以及 3.0
2010,Python 2.7
PS: Python诞生之初,编程界的许多大佬都为Python贡献源码,但是由于大佬们都是其他语言界的,代码编写风格各不相同,而且重复率很高。
于是龟叔不乐意了,因为这些源码不符合Python的宗旨(优美、清晰、简单),于是在2008年暑假期间将源码重新进行整合并且推出一个全新的版本Python 3.0。与此同时,龟叔发出声明全世界在使用Python进行开发的人,要将版本升级到3.0版本。但是一些大型网站代码量几十万行,不可能在短时间内全部改写完毕,所以在众多人的抗议下,龟叔软了下来。龟叔在2010年发布Python 2.7并且发出通告不会再有2.8版本,2.x的版本将被支持到2020年,此后应在Python3.4或更高版本进行开发。
2,Python语言的特点:
优:
高级语言;
开发效率高;
可移植性; ----- 可以跨平台
可扩展性; ----- 例如,某一段代码希望被加密,那么可以通过C语言进行改写
可嵌入性; ----- 例如,可以为其他语言提供脚本功能
劣:
运行速度速度慢;(一个正常人能感知时间的最小单位是0.15~0.4s)
代码不可加密;
线程不能利用多CPU的问题 (但这不是问题)
3,TIOBE排名:(排名只能反映一门语言的热门程度,并不能反映一门语言的好坏)
4,解释器: Cpython C语言开发,官方推荐
Ipython 在Cpython的基础上增强了交互功能
PyPy 目标:执行速度,与Cpython有那么一丢丢不同,由Python开发,使用JIT(动态编译)技术
Jpython 运行于Java平台 ps: 在Python中叫解释器;在Java中叫虚拟机
IronPython 运行于.Net平台
5,Python文件后缀名:*.py (其实后缀名对Python没有影响,只是告诉别人这是Python程序)
6,变量: (标记和存储数据)
规则:
(1) 只能是字母、数字、下划线的任意组合;
(2) 开头不能为数字;
(3) 不要使用中文或者拼音。虽然Python3支持中文,但为了国际化,最好不要使用中文;
(4) 禁止使用关键字;
(5) 取名要有意义;
(6) 名字不要太长;
(7) 变量区分大小写;
(8) 命名方式:
① 驼峰式: 第一个单词全部小写,其他单词首字母全部大写,其余小写;或者每个单词首字母都大写;
e.g. ageOfHardy
e.g. AgeOfHardy
② 下划线:单词之间用下划线连接 -------> 官方建议
e.g. age_of_hardy
约定:
(1) 列表: xxx_list / xxx_ls (9) 前后都有两个下划线的变量是系统变量
(2) 元组: xxx_tuple / xxx_tp (10) 以两个下划线开头后面没有的是类的私有变量,只能在类中使用,无法被继承
(3) 字符串: xxx_str / xxx_s1 / xxx_s2 (11) 一个下划线开头的变量,不能被from ... import * 导入
(4) 字符: xxx_ch
(5) 集合: xxx_set
(6) 字典: xxx_dict
(7) x、y、z: 用来表示浮点类型
(8) 除了(7)以外的字符,都表示整数,尤其是i、j、k、m、n
7,常量
Python中,不存在绝对的常量,只是一种约定,单词全部大写,因为常量对整个程序都是有影响的,是全局的,所以一般不要改动。
e.g. PI = 3.1415926
8,注释:
在自己觉得重要或者不好理解的地方加注释,不必全部都加(可以用中文或者英文,但不要用拼音)
①单行注释:#,有一种用途是,实验新特性
②多行注释:’’’......’’’ / “ ””......”””
9,缩进
Python中没有什么大括号这类标识某些代码属于哪个语句下;Python中是用缩进机制标识的。
根据PEP-8标准,缩进量一般为4个半角空格。当然,不是绝对的,只要位于一个语句下的所有代码缩进量相同即可。
另外,也可以使用Tab键。不过,在同一语句下,切记空格和制表位Tab不能混着用。
用IDLE和PyCharm编码时,就使用默认缩进量;
用notepad++编码时,可以将Tab替换为4个空格。
设置->首选项->语言->勾选“替换为空格”
10,PyCharm使用秘籍
http://v.youku.com/v_show/id_XMjczOTM4MzE2MA==.html?spm=a2h0j.11185381.listitem_page1.5
PS:Python交互器主要是用来调试代码的
11,Win10下安装Python2和Python3
http://v.youku.com/v_show/id_XMjgwNDUwNTEyOA==.html?spm=a2h0j.11185381.listitem_page1.5
03 Python的那些事的更多相关文章
- Python那点事
目录 Python那点事 一. Python介绍 二. 目前python的主要领域 三.Python的运用 四. Python的发展史 Python的种类 Python那点事 相信很多小伙伴会跳过此环 ...
- [Python] 震惊, 我居然用Python干这种事ꈍ .̮ ꈍ
阅读本文只需花费你两分钟, 两分钟你买不了吃亏,你也买不了上当. 那么, 为何不静下心来看看呢? Python 海龟创意绘画, Turtle库创作精美图画 Author:Amd794 E-ma ...
- python 多线程糗事百科案例
案例要求参考上一个糗事百科单进程案例 Queue(队列对象) Queue是python中的标准库,可以直接import Queue引用;队列是线程间最常用的交换数据的形式 python下多线程的思考 ...
- Python补充03 Python内置函数清单
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明. Python内置(built-in)函数随着python解释器的运行而创建.在Pytho ...
- 03.Python网络爬虫第一弹《Python网络爬虫相关基础概念》
爬虫介绍 引入 之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无论是从实际的 ...
- 03 python 初学(字符格式化输出)
#_author: lily #_date: 2018/12/16 name = input("your name: ") age = input("your age: ...
- python 爬糗事百科
糗事百科网站段子爬取,糗事百科是我见过的最简单的网站了!!! #-*-coding:utf8-*- import requests import re import sys reload(sys) s ...
- 接口测试03 - Python HTTP库requests
概述: 整理一些requests的相关知识,及如何使用requests进行接口测试. requests号称:是唯一的一个非转基因的Python HTTP库,人类可以安全享用. 安装: 先看下怎么安装r ...
- 03 python学习笔记-文件操作(三)
本文内容主要包括以下方面: 1. 文件操作基本认识2. 只读(r, rb)3. 只写(w, wb)4. 追加(a, ab)5. r+读写6. w+写读7. a+写读(追加写读)8. 文件的修改 一.文 ...
随机推荐
- bzoj2558
哈希+拓扑排序 题意比较绕,先开始没看懂就看了发程序,发现好像理解的不太一样,后来找到了一个题目解释... 摘自jcvb:其实就是说颜色相同且三个出口分别对应相同(注意有可能是合并后才相同)两个结点是 ...
- Cpp module
- 02_cfork分叉进程
fork函数.调用它就可以在当前的进程当中给它分叉出一个新的进程.分叉出的进程就可以看看它有什么特点?
- DNS域名记录
DNS域名记录 DNS数据库 在DNS的解析过程中用到域名的解析资源的记录,这个解析记录在DNS当中称为DNS数据库. 这个数据库又分为正解和反解,正解就是从主机名到ip的过程,反解就是从ip反响解析 ...
- E20170606-hm
pipeline n. 管道; 输油管道; 渠道,传递途径; dump vt. 倾倒; 倾销; 丢下,卸下; 摆脱,扔弃; n. 垃圾场; 仓库; 无秩序地累积;
- jQuery——修改网页字体大小
HTML: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <lin ...
- 题解报告:poj 3468 A Simple Problem with Integers(线段树区间修改+lazy懒标记or树状数组)
Description You have N integers, A1, A2, ... , AN. You need to deal with two kinds of operations. On ...
- N - Binomial Showdown (组合数学)
Description In how many ways can you choose k elements out of n elements, not taking order into acco ...
- scla-基础-函数-元组(0)
//元组 class Demo2 extends TestCase { def test_create_^^(){ val yuana = (1,true,1.2,"c",&quo ...
- 如何向expect脚本里面传递参数
如何向expect脚本里面传递参数 比如下面脚本用来做ssh无密码登陆,自动输入确认yes和密码信息,用户名,密码,hostname通过参数来传递 ssh.exp Python代码 # ...