Python笔记(1)变量与表达式
列表list
list是用的最多的类型
可以count计数
可嵌套,多钟类型并存 支持 + *
a = [1,2,3]
a_ref = a
a_copy = a[:]
引用,a变化a_ref也变化 指向同一个地址 可以用id(a)查看,除非拷贝a_copy。但是如b = a * 2 + *不是a的引用,b会变成一个新的列表
l = [4,5,6]
x = l*4,y = [l]*4
l[1] = 0
print x,y
x已经和l没有关系了,x不会变,y会变
字符串和列表都有index等相似操作,但是list可以直接根据index修改,字符串就不可以修改,因为字符串是一个常量,可以访问,不能通过index修改。
元祖
相当于一个不可变的列表,[]变成()和字符串很像。
index,count,+,*
也可以嵌套可以变化的list(不推荐)
转换 tuple(list) (list转换成元祖)
字典
key-value key不可变(数字,字符串,元祖),value各个类型都可以
字典是个散列表,没有顺序,适合插入,查询操作
zip可将相同长度的list生成一个key-value的字典
Get,Update,Del,Clear,嵌套
浅拷贝 D.copy() ,copy.copy(D) (只拷贝一层,非嵌套的适用)
深拷贝 copy.deepcopy(D) (全部拷贝过来)
文件
F = open(path,'r')
F.read() F.readline() F.write() F.close()
还有Shelve和Pickle(cPickle)库
#Shelve库 读取只要open就行了
import shelve
D = shelve.open(file)
D['name'] = 'content'
D.close() #cPickle 读取需要load
f = open(file,mode)
cPickle.dump(obj,f)
Obj = cPickle.load(f)
#中文支持
import codecs
f = codecs.open(filename,mode(w,r等),encoding) #文件是否存在 返回boolen
import os
os.path.exists(filename)
os.rename(old,new)
输入
raw_input 接收字符串
input 接收可运行的表达式
x = input("1+2:")
输入1+2
print "%d"%x
输出
3
但是在python3中 input和raw_input合体了,raw_input被取消了,input用于接收字符串,要传整形得自己转
输出
print Python2中是一个语句,有格式
print a,b
print>>file a,b
print '%d%s'%(a,c)
print "{0} use {1}".format('we','python')
Python3是个函数,有固定的参数
print([obj,....][,spe(什么东西分割)][,end = '\n'][,file = sys.stdout])
条件表达式
if/else where/else 不等于0的都是true 缩进要一致 table和空格不要混用
while经常跟着逻辑表达式 if常遍历列表,字符串,元祖,字典,文件
列表解析 表达简洁,速度比直接写循环要快一点,python作者喜欢列表解析。
例
l2 = ['a','b','b','a','b','b','v','v']
l1 = []
[l1.append(i) for i in l2 not in l1]
异常处理
try/except/finally
raise error(message)
Assert condition 条件触发异常,打印信息终至程序 (assert xxxx,"string")
Python笔记(1)变量与表达式的更多相关文章
- python笔记_magic变量和函数
前言 先扯一点背景知识 PEP8(Python Enhancement Proposal)是一份python的编码规范,链接:http://www.python.org/dev/peps/pep-00 ...
- 第二周Python笔记之 变量的三元运算
如果变量a小于b,则d的值取a变量的值,否则取c变量的值
- Python基础笔记_变量类型
下面是W3C学习笔记 , , ) :] ]) :]) :]) :-]) :-]) ]) :]) :]) ) , , ]) :]) :]) ) , , , ]) :]) :]) ) ] = , ])) ...
- 小甲鱼:Python学习笔记001_变量_分支_数据类型_运算符等基础
1.下载并安装Python 3.5.0 Python是一个跨平台语言,Python从3.0的版本的语法很多不兼容2版本,官网找到最新的版本并下载:http://www.python.org 2.IDL ...
- Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助
Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助 目录 Pychar ...
- python笔记32-ddt框架优化(生成html报告注释内容传变量)
前言 至于什么是ddt这个可以参考我之前写的博客内容,使用ddt框架的时候,有个问题困扰我很久了,一直没得到解决(也有很大小伙伴问过我,没解决抱歉了!) 这个问题就是:如何使用ddt框架时,生成的ht ...
- 【Python笔记】Python变量类型
Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据 ...
- 学习Python笔记---变量和简单数据类型
首先声明,这个是个人在自学的一些笔记,因为是小白,刚接触Python,之前也没有过类似的经验,所以很多东西对于其他人来说可能是小白级别的,写出来没有其他的意思就是自己整理然后记录一下,顺便分享出来,而 ...
- python笔记:#007#变量
变量的基本使用 程序就是用来处理数据的,而变量就是用来存储数据的 目标 变量定义 变量的类型 变量的命名 01. 变量定义 在 Python 中,每个变量 在使用前都必须赋值,变量 赋值以后 该变量 ...
- Python 学习笔记2 变量
Python变量的一些命名规则和指南 每种编程语言都需要变量, 这些变量的命名,我们一般会遵守一些公认的规则. 已达到方便自己,他人阅读的好处. 变量只能包含字母.数字和下划线.变量可以以字母和下划线 ...
随机推荐
- 正则表达式的JS验证
/判断输入内容是否为空 function IsNull(){ var str = document.getElementById('str').value.trim(); ...
- Java暗箱操作之自动装箱与拆箱
我以前在写Android项目的时候,估计写得最多最熟练的几句话就是: List<Integer> list = new ArrayList<Integer>(); list.a ...
- Ajax.BeginForm参数详解
在Asp.Net的MVC中的语法,在Razor页面中使用,替代JQuery的Ajax使用,方便快捷. 使用Ajax.BeginForm方法会生成一个form表单,最后以Ajax的方式提交表单数据:需要 ...
- MySQL更改数据库数据存储目录
MySQL数据库默认的数据库文件位于/var/lib/mysql下,有时候由于存储规划等原因,需要更改MySQL数据库的数据存储目录.下文总结整理了实践过程的操作步骤. 1:确认MySQL数据库存储目 ...
- SQL SERVER错误:已超过了锁请求超时时段。 (Microsoft SQL Server,错误: 1222)
在SSMS(Microsoft SQL Server Management Studio)里面,查看数据库对应的表的时候,会遇到"Lock Request time out period e ...
- 分布式架构中一致性解决方案——Zookeeper集群搭建
当我们的项目在不知不觉中做大了之后,各种问题就出来了,真jb头疼,比如性能,业务系统的并行计算的一致性协调问题,比如分布式架构的事务问题, 我们需要多台机器共同commit事务,经典的案例当然是银行转 ...
- jQuery标签选择器
$(function() { //alert("hello jquery"); //选择器 //id选择器 $("#bt1").click( function( ...
- 【转】Java并发编程注意事项
保证线程安全的三种方法: 不要跨线程访问共享变量 使共享变量是final类型的 将共享变量的操作加上同步 一开始就将类设计成线程安全的, 比在后期重新修复它,更容易. 编写多线程程序, 首先保证它是正 ...
- mysql explain的使用(优化查询)
explain显示了mysql如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句. 1.创建数据库 创建的sql语句如下: /* Navicat MySQL D ...
- 3D坦克大战游戏iOS源码
3D坦克大战游戏源码,该游戏是基于xcode 4.3,ios sdk 5.1开发.在xcode4.3.3上完美无报错.兼容ios4.3-ios6.0 ,一款ios平台上难得的3D坦克大战游戏源码,有2 ...