人生苦短我用Python(一)——基本类型和语法
一.Python中数据类型
- 整数:1 100
- 浮点数:1.23 3.14
- 字符串:’abc’
- 布尔值:True False 可以用and、or、not来进行运算。
- 空值:None
二.输出语句:print
三.Python的注释:#
四.Python的变量
变量名必须为大小写英文、数字和下划线(_)的组合,且不能用数字开头。
如:a=1 #变量a是一个整数
t_007 = ‘T007’ # 变量t_007是一个字符串
五.list
1.创建list
(1)Python是动态语言,所以list中的元素并不要求都必须是同一种数据类型,可以在list中包含各种数据.
如:L = ['Michael', 100, True]
(2)一个元素也没有的list就是空list。
如:empty_list = []
2.访问list
(1)按照索引访问list,如print L[0];(注意:索引从0开始,不要越界。)
(2)按照索引倒序访问list,如print L[-2],表示倒数第二。
3.list添加元素
(1)使用list的append()方法,如L.append(‘kim’);
(2)使用list的1insert()方法,接受两个参数,一个是索引号,一个是待添加的元素。如L.insert(0,’kim’);
4.list删除元素
使用list的pop()方法,参数为索引号,不传参数,则默认删除最后一个。
5.替换元素
对list的某一个索引赋值,就可以直接用新的元素替换掉原来的元素。
如:L[2] = ‘kim’
六.tuple
- 创建tuple:tuple是另一种有序的列表,中文翻译为“ 元组 ”。tuple 和 list 非常类似,但是,tuple一旦创建完毕,就不能修改了。
(1)创建tuple使用(),如:t=(1,2,3,4,5);
(2)创建单元素的tuple要在元素后加一个, 如:t=(1,)
(3)创建空元素的tuple可以直接用()表示。 如:t=()
2.可变的tuple
tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向'a',就不能改成指向'b',指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的。
如:t=(1,2,[‘A’, ‘B’]); list[‘A’, ‘B’]的值是可以改变的。
七.条件判断和循环
1.if
python具有缩进规则,具有相同缩进规则的代码被视为代码块。缩进最好严格按照python的习惯写法,使用4个空格,不要使用tab键。
if 语句后接表达式,然后用:
表示代码块开始。
age = 20if age >= 18:print 'your age is', ageprint 'adult'
在Python交互环境下敲代码,还要特别留意缩进,并且退出缩进需要多敲一行回车。
2.if-else
利用 if ... else ... 语句,我们可以根据条件表达式的值为 True 或者 False ,分别执行 if 代码块或者 else 代码块。
age = 20if age >= 18:print 'adult'else:print 'teenager'
3.if-elif-else
elif 意思就是 else if。一系列条件判断会从上到下依次判断,如果某个判断为 True,执行完对应的代码块,后面的条件判断就直接忽略,不再执行了。
score = 85if score>=90:print 'excellent'elif score>=80:print 'good'elif score>=60:print 'passed'else:print 'failed'
4.for
for 循环就可以依次把list或tuple的每个元素迭代出来。
L = [75, 92, 59, 68]sum = 0.0for x in L:sum = sum+xprint sum / 4
5.while
while 循环不会迭代 list 或 tuple 的元素,而是根据表达式判断循环是否结束。
sum = 0x = 1while x<100:x=x+2;sum=sum+x;print sum
6. break退出循环
用 for 循环或者 while 循环时,如果要在循环体内直接退出循环,可以使用 break 语句。
sum = 0x = 1n = 1while True:sum=sum+x;x=x*2;n=n+1;if n>20:break;print sum
7.continue继续循环
用continue跳过后续循环代码,继续下一次循环。
sum = 0
x = 0
while True:x = x + 1if x % 2 == 0:continueif x >= 100:breaksum += x
print sum
8.多重循环
在循环的内部可以嵌套循环。
for x in [1,2,3,4,5,6,7,8,9]:for y in [0,1,2,3,4,5,6,7,8,9]:if x<y:print x*10+y;
八.dict
1.dict类似于java的map,存放key-value键值对,dict就是通过 key来查找 value。
花括号 {} 表示这是一个dict,然后按照 key: value, 写出来即可。最后一个 key: value 的逗号可以省略。
d = {'Adam':95,'Lisa':85,'Bart':59,'Paul':75,
}
2.len()函数可以计算任意集合的大小。
如:len(d)
3.访问dict
(1) 使用 d[key] 的形式来查找对应的 value。
if 'Paul' in d:print d['Paul']
(2)使用dict本身的get方法,在key不存在的时候返回None。
print d.get('Adam')
print d.get('KimTian')
4.dict的特点
- 存储的key-value序对是没有顺序的;
- 查找速度快,无论有多少元素,查找速度都是一样的,而list的查找速度随着元素增加而逐渐下降,但dist占用内存大,还会浪费很多内容;
- 在一个dist中,key不能重复;
- 作为key的元素必须不可变,如字符串、整数、浮点数、tuple都可以,但list是可变的,不能作为key,value是否可变无所谓。
5.更新dict
dict是可变的,可以随时往dict中添加新的key-value,如果key已经存在,则会用新的value替换掉原来的value。
d['kimtian'] = 100
d['Adam'] = 99
6.遍历dict
dict也是一个集合,可以直接用for循环来实现遍历dict。
for key in d:print key + ':' + str(d.get(key))
九.set
1.set持有一系列不重复的无序元素。
创建 set 的方式是调用 set() 并传入一个 list,list的元素将作为set的元素。如果list中有重复的元素,所以如果我们传入包含重复元素的list时,set会自动去掉重复的元素。
s = set(['A', 'B', 'C', 'C'])
print len(s)
输出结果为3,因为set会自动去掉重复的元素。
2.访问set
由于set存储的是无序集合,所以无法通过索引访问set,只能通过判断一个元素是否在set中。
如:print 'A' in s
3.set特点
- 判断一个元素是否在set中速度很快;
- set存储的元素是无序的。
4.遍历set
set也是一个集合,可以通过for循环来进行遍历。
s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])
for x in s:print x[0], ':', x[1]
5.更新set
由于set存储的是一组不重复的无序元素,因此更新set包含增加元素和删除元素。
(1)添加元素
使用set的add()方法。
如果添加的元素已经存在于set中,add()不会报错,但也不会加进去了。
(2)删除元素
使用set的remove()方法。
如果删除的元素不存在set中,remove()会报错。所以删除元素前,要判断是否在set中。
s = set(['Adam', 'Lisa', 'Paul'])
L = ['Adam', 'Lisa', 'Bart', 'Paul']
for x in L:if x in s:s.remove(x)else:s.add(x)
print s
人生苦短我用Python(一)——基本类型和语法相关推荐
- 学习Python全套代码【超详细】Python入门、核心语法、数据结构、Python进阶【致那个想学好Python的你】
大家早上好,本人姓吴,如果觉得文章写得还行的话也可以叫我吴老师.欢迎大家跟我一起走进数据分析的世界,一起学习! 感兴趣的朋友可以关注我的数据分析专栏,里面有许多优质的文章跟大家分享哦. 文末附上详细的 ...
- Java Native Interface 二 JNI中对Java基本类型和引用类型的处理
本文是<The Java Native Interface Programmer's Guide and Specification>读书笔记 Java编程里会使用到两种类型:基本类型(如 ...
- python了解一下_想要精通python?19个语法了解一下!
原标题:想要精通python?19个语法了解一下! Python简单易学,但又博大精深.许多人号称精通Python,却不会写Pythonic的代码,对很多常用包的使用也并不熟悉.学海无涯,我们先来了解 ...
- javascript中基本类型和引用类型的区别分析
大多数人系统学习过的程序设计语言,在这些语言的学习过程中最早学到的几个要点之一就是值类型和引用类型的区别.下面我们来看一下在 JavaScript 中基本数据类型(Primitive Types)和引 ...
- java 基本类型 包装类型_Java中基本类型和包装类
基本类型运算 boolean类型数据可以进行逻辑运算(&&,||,!),其他的基本类型都可以进行数值计算(+,-,*,/).逻辑运算比较简单易懂,完全与逻辑数学的规则一致,而数值运算涉 ...
- JavaScript基本类型和引用类型
目录 介绍 背景 JavaScript数据类型 基本类型 基本类型的行为如何? 使用typeof运算符 语法类型 为什么null返回对象? 参考类型 创建对象 对象的行为如何? 销毁对象 基本类型和引 ...
- 【系列】重新认识Java——基本类型和包装类
Java一种静态编程语言,所有变量和表达式是在编译时就确定的.同时,Java又是一种强类型语言,所有的变量和表达式都有具体的类型,并且每种类型是严格定义的.类型限制了变量可以hold什么样的值,表达式 ...
- Java面试题 基本类型和包装类对象使用 == 和 equals进行比较的结果?
Java面试题 (基础 与 语法) 基本类型 和 包装类 对象使用 == 和 equals 进行比较的结果? 1.值不同,使用 == 和 equals() 比较都返回 false 2.值相同 使用 = ...
- Python快速入门--基本语法
5.1 Python简介 本章将介绍Python的最基本语法,以及一些和深度学习还有计算机视觉最相关的基本使用. 5.1.1 Python简史 Python是一门解释型的高级编程语言,特点是简单明确. ...
最新文章
- mysql repair 索引_mysql 创建索引、重建索引、查询索引、删除索引 转自:http://www.phpernote.com/mysql/942.html...
- win7更新powershell到5.1
- wxWidgets:多线程概述
- vector和deque的区别?
- 123. 买卖股票的最3佳时机 III
- 取消堆集以提高延迟并减少AWS账单
- [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第7篇]随机性如何辅助计算和什么是BPP类问题
- C语言给定3x3矩阵旋转输出
- Java构造函数执行顺序
- 大数据对人们的好处_大数据有什么作用和优势
- 计算机组成原理—半导体随机存储器的基本结构
- 应用机器学习(六):决策树
- 串行口通讯测试软件,485串口测试软件
- 如何用Hexo搭建个人博客网站
- 温度转换 python
- 计算机中的正数,负数到底是什么?
- 【2】数据可视化:基于 Echarts + Python 实现的动态实时大屏 - 物流大数据
- 在EXCEL中VBA编程检验身份证号码有效性
- http://www.cnblogs.com/tornadomeet/archive/2012/05/24/2515980.html
- CRM系统帮助企业省时省力
热门文章
- 使用DTS从MySQL 8.0迁移到达梦数据库
- android 仿微信选取相册_Android 实现一个仿微信的图片选择器
- excel内容写入txt
- Apache-ant的下载和安装
- edge 浏览器截取全图保存成图片
- onready怎么加img_html怎么用img添加图片 插入图片可以使用img标
- 地理教师也可以这样有趣
- php文字添加投影,php使用Imagick给图片写文字加阴影效果
- 【Unity3d】Unity3d模型制作规范
- java毕业设计汽车维修管理系统mybatis+源码+调试部署+系统+数据库+lw