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 ...
随机推荐
- [java]反转单项链表,用O(n)时间和O(1)空间
链表数据结构 public class ListNode { public int val; public ListNode next; public ListNode(int x) { val = ...
- Laravel 迁移检查表是否存在
Schema::hasTable('TableName'); //检查表释放存在 Schema::hasColumn('tableName', 'columeName'); //检查表是否存在某个字段 ...
- 校园商铺-4店铺注册功能模块-6店铺注册之Controller层的实现
1. 从request请求获取获取相关的值 HttpservletRequest request代表的是客户端的请求.当客户端通过http协议访问服务器的时候,http请求头中的所有信息,都封装在这个 ...
- Windows 获取控制台窗口句柄
详细信息 因为多个窗口可能具有相同的标题,您应该更改当前的控制台窗口标题为唯一的标题.这将有助于防止返回不正确的窗口句柄.使用 SetConsoleTitle() 来更改当前的控制台窗口标题.下面是此 ...
- csps模拟84Smooth,Six,Walker题解
题面:https://www.cnblogs.com/Juve/articles/11733280.html smooth: 暴力强筛到7e7有60分... 正解: 维护一个队列,存所有的B-光滑数, ...
- jedis3.1.0在weblogic(jdk1.6)中无法运行
文章目录 错误 探索 总结 错误 在tomcat中运行是没有问题的,可是在weblogic中是不能够运行的,weblogic中的jdk客户要求是1.6的. 如果更换版本jedis2.9.0是没有问题的 ...
- UVA-11987-Almost Union-Find-并查集的基本操作合并、删除、移位
I hope you know the beautiful Union-Find structure. In this problem, you’re to implement something s ...
- HDU-6375-度度熊学队列-双端队列deque/list
度度熊正在学习双端队列,他对其翻转和合并产生了很大的兴趣. 初始时有 NN 个空的双端队列(编号为 11 到 NN ),你要支持度度熊的 QQ 次操作. ①11 uu ww valval 在编号为 u ...
- PHP 统计数组中所有的值出现的次数 array_count_values 函数
array_count_values() 函数用于统计数组中所有的值出现的次数. array_count_values() PHP array_count_values() 函数用于统计数组中所有的值 ...
- wpf Rectangle
<Rectagle Width="100" Height="100" Stroke="Black" Fill="Blue&q ...