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 ...
随机推荐
- Ubuntu升级软件和ubuntu升级系统的命令
sudo apt-get update: 升级安装包相关的命令,刷新可安装的软件列表(但是不做任何实际的安装动作) sudo apt-get upgrade: 进行安装包的更新(软件版本的升级) su ...
- Java int和Integer包装类的区别和比较
区别: ...
- Tool Zip 破解
//侵权请联系我进行删除 email:YZFHKM@163.com 0x00 fcrackzip简单介绍 fcrackzip是一款专门破解zip类型压缩文件密码的工具,工具小巧方便.破解速度快,能使用 ...
- 5020: [THUWC 2017]在美妙的数学王国中畅游
传送门 当年听llj讲的时候觉得这简直是个不可做的神题. 现在看来并不是很神,可能是我已经被剧透了的缘故... 一开始以为是函数套函数,懵蔽了好久,结果只是求和 被剧透了泰勒展开就比较水了..只要你不 ...
- npm安装vuex及防止页面刷新数据丢失
npm install vuex 在项目scr目录下新建store文件夹,在store文件夹下新建index.js文件. import Vue from 'vue'; import Vuex from ...
- 20.multi_case03
# 多线程 import threading import time class myThread(threading.Thread): def __init__(self, threadID, na ...
- springboot整合TinyMCE文件上传回显
今天想尝试TinyMCE富文本,准备着手搭建自己的博客,发现springboot上传文件,如果把文件放在static文件夹不能即时回显,百度了下,说是要刷新文件夹才能解决. 有问题就有解决办法 方法1 ...
- 设置Hadoop+Hbase集群pid文件存储位置
有时候,我们对运行几天或者几个月的hadoop或者hbase集群做停止操作,会发现,停止命令不管用了,为什么呢? 因为基于java开发的程序,想要停止程序,必须通过进程pid来确定,而hadoop和h ...
- Mybatis-generator/通用Mapper/Mybatis-Plus对比
mybatis-plus-boot-starter和mybatis-spring-boot-starter冲突导致MapperScan失效问题还没有解决,只能不用mybatis-plus-boot-s ...
- Linux开机、重启和用户登录注销(2)
1.关机&重启命令 1.1基本介绍 shutdown shutdown -h now :表示立即关机 shutdown -h 1: 表示1分钟后关机 shutdown -r now : ...