Python基础 第一天
编码
#coding=utf-8
函数入口
if __name__== "__main__":
内置方法
type:a=1 type(a)
help:import time help(time)
dir:dir(time)
常用基本数据类型
1.int 整型
2.boolean 布尔
3.string 字符串:计算字符串长度之前,要把字符串转为utf-8编码 len(str.decode("utf-8"))
1).截取指定字符串 s = "i,am,lilei" print s[2:4] print s.split(',')[1]
2).替换指定字符串 ainfo = 'i love php' replycontent = ainfo.replace('php','python')
3).字符串拼接 str1="abcd" str2="efg" str3="hjk" print "$".join([str1,str2,str3]) #中间用$符号拼接
c = a + b
c = "%s%s" % (a,b)
c = "{a}{b}" .format (a=a,b=b)
c = "".join([a,b])
4).查找字符串的位置
a = "i,am,a,boy,in,china" print a.find('i')##不存在返回-1 print a.index('i')##不存在报错
计算该字符串一共有几个逗号 print a.count(',')
4.list 列表
b=[[1,2,3],[4,5,6]]
b[0][1]=7 #修改指定元素数值
print b #输出结果为[[1, 7, 3], [4, 5, 6]]
1) 切片
正向索引 a = [1,2,3,4,5,6,7] print a[0:4:1] [1, 2, 3, 4]
反向索引 a = [1,2,3,4,5,6,7] print a[-1:-4:-1] [7, 6, 5]
默认索引 a = [1,2,3,4,5,6,7] print a[1:]结果为[2, 3, 4, 5, 6, 7] print a[1::2]结果为[2, 4, 6]
2)添加操作
+ 生成一个新的列表
Extend 接受参数并将该参数的每个元素都添加到原有的列表中,原地修改列表而不是新建列表
Append :添加任意对象到列表的末端
Insert: 插入任意对象到列表中,可以控制插入位置。
3)修改操作
A = [1,2,3]
A[0]=’4’
4)删除操作
Del :我们通过索引删除指定位置的元素。del a 删除列表对象的引用 del a[:] 清空列表对象里的元素
Remove:移除列表中指定值的第一个匹配值。如果没找到的话,会抛异常。
Pop:返回最后一个元素,并从list中删除它。
5)成员关系
通过In和not in我们可以判断一个元素是否在列表里。
返回一个bool类型,元素在列表里返回true,否则返回fasle.
6)列表推导式
a.首先迭代iterable里所有内容,每一次迭代,都把iterable里相应内容放到iter_var中,再在表达式中应用该iter_var的内容,最后用表达式的计算值生成一个列表。
比如我们要生成一个包含1到10的列表 [x for x in range(1,11)] [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
b.加入了判断语句,只有满足条件的内容才把iterable里相应内容放到iter_var中,再在表达式中应用该iter_var的内容,最后用表达式的计算值生成一个列表。
[x for x in range(1,11) if x % 2 == 1] [1, 3, 5, 7, 9]
7)排序翻转:sort,reverse
list的reverse函数:反转一个list, 他的返回值为none
8)列表的应用:
a.内置list方法。
b.2.xrange和range的具体区别。
xrange的用法:xrange(开始,结束,步长) xrange 它生成一个xrange对象。
比较:range: 直接生成一个列表对象。 xrange: 它是生成一个xrange对象。
推荐:当我们需要操作一个非常大的数据,而且内存比较吃紧的时候,我们可以用xrange来操作省内存。
xrange一般用在循环里面,比如我们只需要操作部分数据的话,而不是返回全部元素来完成操作,推荐用xrange,效率更高。
c.列表推导式之再应用。
[x*x for x in range(100)]
生成字符串 ['the %s' % d for d in xrange(10)]
[(x,y) for x in range(2) for y in range(2)]
生成字典 dict([(x,y) for x in range(3) for y in range(2)])
5.tuple 元组
1)有序的集合
2)通过偏移来取数据
3)属于不可变的对象,不能在原地修改内容,没有排序,修改等操作。
元组不可变的好处。保证数据的安全,比如我们传给一个不熟悉的方法或者数据接口,确保方法或者接口不会改变我们的数据从而导致程序问题。
6.集合
集合是没有顺序的概念。所以不能用切片和索引操作。
1)创建集合。set():可变的 不可变的frozenset():
2)添加操作: add,update
3)删除 remove
4)成员关系 in,not in
6)交集,并集,差集 & | -
7)set去重 列表内容元素重复
7.dict 字典
字典是无序的,它不能通过偏移来存取,只能通过键来存取。
1)创建字典。{},dict()
info = {'name':'lilei', 'age': 20}
info = dict(name='lilei',age=20)
2)添加内容 a['xx'] = 'xx'
3)修改内容 a['xx'] = 'xx'
dic['key'] = 'value'
update 参数是一个字典的类型,他会覆盖相同键的值
info.update({'city':'beijing','phone':'nokia'})
4)删除 del,clear,pop
del info['phone'] 删除某个元素
info.clear()删除字典的全部元素
info.pop('name')
5)in 和 has_key() 成员关系操作
phone in info
info.has_key('phone')
6)keys(): 返回的是列表,里面包含了字典的所有键
values():返回的是列表,里面包含了字典的所有值
items:生成一个字典的容器:[()]
7)get:从字典中获得一个值
info.get('name')
info.get('age2','22')
操作文本函数
writeStr="写入";
f=open('a.txt','w');
f.write(writeStr)
f.close() f=open("a.txt","r")
readStr=f.read();
print readStr #将模块string的帮助文档保存为一个文件
import sys
import string
f = open('test.log','w')
sys.stdout = f #将标准的输出流反映到文件的写入方法里面
help(string)
f.close()
Python基础 第一天的更多相关文章
- python基础第一章
Python基础 第一个python程序 变量 程序交互 基本数据类型 格式化输出 基本运算符 流程控制if...else... 流程控制-循环 第一个python程序 文件执行 1.用notepad ...
- Python基础第一课
Python基础 安装软件并配置环境变量 1.第一句python --初学后缀名可以是任何数 --后期学习需要导入模块时不是py后缀名会报错 2.两种执行方式 Python解释器 py文件路径 Pyt ...
- Python基础第一篇
一.第一句python代码 1.python执行过程:1.加载内存-词法分析-语法分析-编译-执行 2.创建hello.py文件,输入内容 #!/usr/bin/env python print &q ...
- Python基础第一篇-------python的介绍
一.python的介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本 ...
- Python基础第一天
诞生时间:1991年,创造者Guido van Rossum 优点: 1.简单 Python是一种代表简单注意思想的语言 2.易学 Python是及其容易上手,因为Python有极其简单的说明文档 ...
- python基础第一天 3.27
# #作业1# 猜年龄,可以让用户猜三次!age = 25user_guess = int(input("input your guess")) age = 25count = ...
- Python之路3【第一篇】Python基础
本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...
- Python之路【第一篇】python基础
一.python开发 1.开发: 1)高级语言:python .Java .PHP. C# Go ruby c++ ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...
- 第一篇:python基础
python基础 python基础 本节内容 python起源 python的发展史 为什么选择python3 第一个python程序 变量定义 表达式和运算符 用户输入 流程控制 判断 流程控制 ...
随机推荐
- LPC1788 SDRAM运行程序
折腾了很久 终于解决了 从SDRAM中运行APP程序. 说明:LPC1788 本身有512K的flash和96K的RAM.支持TFT和SDRAM 这算是跟别家cortex-M3架构MCU相比较的一个亮 ...
- JQuery 插件FlexiGrid 之完全配置与使用
博客分类: Java综合 jQuery配置管理jsonServlet数据结构 自己再做这个的时候.也是找了很多资料..但网上搜索了很多资料. 没有介绍的很全的. 鄙人就在此献丑一下. 来全面的介绍一 ...
- I/B/P SP/SI
H264中I.B.P帧 I帧:只作为参考帧,采用帧内预测 B帧:以其前面的I帧或P帧和后面的P帧作为参考帧 P帧:只能以前面的I帧或P帧作为参考帧 H264中的SP SI SP和SI是H264中引入的 ...
- Cocos2dx3.0过渡篇 各种遍历与范围for语句的使用【转】
1.CCArray的遍历看到这里,有些人又按耐不住的要举起西瓜刀了:你不是说3.0beta后已经没有CCArray这货了吗?现在又拿出来作甚?其实我也很无辜,CCArray确实是没了,但在某个不为人知 ...
- 剑指Offer:面试题15——链表中倒数第k个结点(java实现)
问题描述 输入一个链表,输出该链表中倒数第k个结点.(尾结点是倒数第一个) 结点定义如下: public class ListNode { int val; ListNode next = null; ...
- PostMessage与SendMessage的区别(二)
在做基于窗口的Windows程序的时候,我们避免不了要向窗口发送消息,有两种方式,一种是PostMessage,另外一种是SendMessage.关于这两个宏,我是通过狠狠的看MSDN才搞明白的,那里 ...
- Swift学习(三)类型推导&基本运算&分支&循环
一.Swift中类型推导&基本运算 Swift中类型推导 如果一个标识符在定义时有直接赋值,那么可以根据后面赋值的类型,来推导出前面标识符的类型,这样前面标识符的(:类型)可以省略 查看标识符 ...
- 操作系统学习笔记 对称多处理(SMP)
SMP:一种通过复用处理器提高程序执行并行性的方式. 根据SMP,计算机系统可以分为以下四类: 单指令单数据流(SISD):一个单处理器执行一个单指令流,对保存在一个存储器中的数据进程进行操作. 单指 ...
- activity的android:name 设置问题
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com. ...
- Android基础总结(12)——XML和JSON解析
XML和JSON解析 在网络上传输数据时最常用的格式有两种:XML和JSON.本文主要就是学习如何对这两种常用的数据格式进行解析. 1.XML和JSON的定义 XML:扩展标记语言 (Extensib ...