Python学习之--python概要
1 Python的优点
Python语言类库齐全,语法简洁,而且在linux上自带安装,在处理大数据以及自动化方面有其独有的特点。
2 Python的解释器
Python解释器用来解释python代码,比较流行的python解释器有:
CPython, 使用C解释器,将python源码解释为.pyc文件(字节码)
JPython, 使用java解释器,将python源码解释为java识别的字节码
IronPython, 使用c#解释器解释为c#识别的字节码
PyPy,解释器解释为字节码后加了一步机器码,它的特点是快
3 Python编码
在Python中设计到的编码方式:
ASCII,用8位来表示部分字符和数字
Unicode,至少16位,包含了各国所能用到的字符。
Utf-8,会对unicode进行压缩,节省不必要的空间消耗。
4 基本的数据类型
Python中基本的数据类型有:
int 整型
long长整型
float 浮点型
布尔型: True 或者 False; 等价于1或0
字符串:“This is a string”
5 复杂的数据类型
Python中复杂的数据类型有:
list 列表: li=[1,2,3,4,]
tuple 元祖: t1=(1,2,3,4)
dict 字典: dic={'k1':'v1','k2','v2'}
set 集合: {'a','b','c'}
6 代码结构及基本的流程控制
使用#注释
使用\连接 (程序中一行太长,可以使用\分割成好几行)
>>> 1+2+ \
3 + \
4
10
>>>
if..else/ if..elif..else 用来选择控制流程
for,while循环 用来控制循环
break跳出循环
continue跳到循环开始
while...else结构,如果while 循环正常结束(没有使用break 跳出),程序将进入到可选的else 段。
zip()可以用来实现并行迭代,example 如下:
>>> days = ['Monday', 'Tuesday', 'Wednesday']
>>> fruits = ['banana', 'orange', 'peach']
>>> drinks = ['coffee', 'tea', 'beer']
>>> desserts = ['tiramisu', 'ice cream', 'pie', 'pudding']
>>> for day, fruit, drink, dessert in zip(days, fruits, drinks, desserts):
... print(day, ": drink", drink, "- eat", fruit, "- enjoy", dessert)
...
Monday : drink coffee - eat banana - enjoy tiramisu
Tuesday : drink tea - eat orange - enjoy ice cream
Wednesday : drink beer - eat peach - enjoy pie
zip() 函数在最短序列“用完”时就会停止。
7 变量和常量
常量一般用大写字母来表示,用以区分变量,如 PI=3.14
8 缩进
Python 需要通过缩进来判断作用域,同一级别的代码缩进的量必须是一样的,如:

两个print显然是同一级别,那么前面的缩进必须一直,官方推荐缩进4个空格量。当然,最好使用IDE工具来编写,会自动缩进,可以省掉不少麻烦。
推荐的代码缩进风格PEP-8(http://legacy.python.org/dev/peps/pep-0008/)
9 各种运算
9.1 基本算数运算
+, -, *, /, %, **, //
//是取整除,即返回商的整数部分
9.2 比较运算
==, !=, >, <, >=, <=
比较运算结果返回布尔值,比如 2>3 会返回 False
9.3 二进制位运算
& 按位与
| 按位或
^ 按位异或
<< 左移,比如 2<<1 ,会返回4
>>右移,比如2 >>1, 会返回1
10 python中的True 和 False
| 布尔 False null 类型 None 整型 0 浮点型 0.0 空字符串 '' 空列表 [] 空元组 () 空字典 {} 空集合 set() |
上述赋值都会被认为是False,除此之外,其他的为True.
11 其他
列表推导
格式1: [ expression for item in iterable ]
>>> new_li=[item for item in range(10)]
>>> new_li
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
格式2: [expression for item in iterable if condition]
>>> new_li = [item for item in range(10) if item %2 ==1]
>>> new_li
[1, 3, 5, 7, 9]
字典推导
格式:{ key_expression : value_expression for expression in iterable }
>>> word = 'letters'
>>> letter_counts = {letter: word.count(letter) for letter in word}
>>> letter_counts
{'l': 1, 'e': 2, 't': 2, 'r': 1, 's': 1}
Python学习之--python概要的更多相关文章
- Python学习day09 - Python进阶(3)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习day05 - Python基础(3) 格式化输出和基本运算符
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习笔记—Python基础1 介绍、发展史、安装、基本语法
第一周学习笔记: 一.Python介绍 1.Python的创始人为吉多·范罗苏姆.1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言 ...
- python学习笔记-python程序运行
小白初学python,写下自己的一些想法.大神请忽略. 安装python编辑器,并配置环境(见http://www.cnblogs.com/lynn-li/p/5885001.html中 python ...
- Python学习(一) Python安装配置
我本身是Java程序猿,听说Python很强大,所以准备学习一下Python,虽说语言都是相同的,但java跟python肯定还是有区别的.希望在此记录一下自己的学习过程. 目前,Python分2.X ...
- python学习: 优秀Python学习资源收集汇总--转
Python是一种面向对象.直译式计算机程序设计语言.它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块.与Scheme.Ruby.Perl ...
- 总结:Python学习 和 Python与C/C++交互
本篇仅仅是Python的学习和Python和C++数据对接过程中的一些总结. 由于工作的需要,用一周的时间学习 Python. Python是基于C实现的一门解释型语言,由于其易用性,俘获了不少开发者 ...
- Python学习day07 - Python进阶(1) 内置方法
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习之Python简介
Python简介 Python的由来 Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象.解释型计算机程序设计语言,它是吉多·范罗苏姆(Guide van ...
随机推荐
- PL/SQL跨库查询数据
步骤一:找到Database links (新建) 步骤二:正确填写完对应信息 (应用) : 步骤三:执行PL/SQL语句(完成) select * from tablename@MYDATA 注释 ...
- lxhgww的奇思妙想 长链剖分板子
https://vijos.org/d/Bashu_OIers/p/5a79a3e1d3d8a103be7e2b81 求k级祖先,预处理nlogn,查询o1 //#pragma GCC optimiz ...
- 0910CSP-S模拟测试赛后总结
%%%外校参加国赛大佬kai神-rank1 ---------------以上选手实力开挂---------------- %%%skyh.NC锅-rank2 %%%神牛170-rank4 %%%迪哥 ...
- 牛客多校第四场 I string 后缀自动机/回文自动机
这个回文自动机的板有问题,它虽然能过这道题,但是在计算size的时候会出锅! 题意: 求一个字符串中本质不同的连续子串有几个,但是某串和它反转后的字符串算一个. 题解: 要注意的是,一般字符串题中的“ ...
- 如何有效管理Windows系统帐户权限
权限是Windows管理的基础,当然与Windows用户关系最密切,平时接触最多的是与帐户相关的权限.对于Windows帐户权限的管理,你是否完全了解呢?下面,笔者以Winsows XP为例进行相关测 ...
- Assert(断言) 的用法
Assert Assert是断言的意思,头文件为assert.h, assert是一个宏 功 能: 测试一个条件并可能使程序终止 用 法: void assert(int test); 在单元测试中经 ...
- ie9table排列不对.td错行,多了一列
发现问题是ie9,本地用google/ie11都是好的. 有合并行的问题,本来就5列,偏偏莫名其妙多了一列,某一行上就有一个单元格空着,往后推了一列,刷新无数次都是同一行错位. 略微改动一下jsp(删 ...
- 论文阅读-(CVPR 2017) Kernel Pooling for Convolutional Neural Networks
在这篇论文中,作者提出了一种更加通用的池化框架,以核函数的形式捕捉特征之间的高阶信息.同时也证明了使用无参数化的紧致清晰特征映射,以指定阶形式逼近核函数,例如高斯核函数.本文提出的核函数池化可以和CN ...
- FineUI使用记录
@{ ViewBag.Title = "Grid/Grid"; var F = Html.F();} @section body { @(F.Grid().IsFluid(true ...
- BZOJ1096 [ZJOI2007]仓库建设——斜率优化
方程: $\Large f(i)=min(f(j)+\sum\limits_{k=j+1}^{i}(x_i-x_k)*p_k)+c_i$ 显然这样的方程复杂度为$O(n^3)$极限爆炸,所以我们要换一 ...