Python 基础语法(二)

Python 基础语法(二)

--------------------------------------------接 Python 基础语法(一) --------------------------------------------

  2. 元组

    tuple和list十分相似,但是tuple是不可变的,即不能修改tuple,元组通过圆括号中用逗号分割的项定义;支持索引和切片操作;可以使用 in

  查看一个元素是否在tuple中。空元组();只含有一个元素的元组("a",) #需要加个逗号

    优点:tuple比list速度快;对不需要修改的数据进行‘写保护’,可以是代码更安全

    tuple与list可以相互转换,使用内置的函数list()和tuple()。

l = [1, 2, 3]print l # [1, 2, 3]

t = tuple(l)print t # (1, 2, 3)

l1 = list(t)print l1 #[1, 2, 3]

    元组最通常的用法是用在打印语句,如下例:

name = "Peter Zhang"age = 25print "Name: %s; Age: %d" % (name, age)# Name: Peter Zhang; Age: 25

    函数如下:

    count(value)  ---返回元组中值为value的元素的个数

t = (1, 2, 3, 1, 2, 3)

print t.count(2) # 2

    index(value, [start, [stop]])  ---返回列表中第一个出现的值为value的索引,如果没有,则异常 ValueError

t = (1, 2, 3, 1, 2, 3)

print t.index(3) # 2try:    print t.index(4)except ValueError, ve:    print "there is no 4 in tuple"  # there is no 4 in tuple

  3. 字典

    字典由键值对组成,键必须是唯一的;eg: d = {key1:value1, key2:value2};空字典用{}表示;字典中的键值对是没有顺序的,如果想要

  一个特定的顺序,那么使用前需要对它们排序;d[key] = value,如果字典中已有key,则为其赋值为value,否则添加新的键值对key/value;使

  用del d[key] 可以删除键值对;判断字典中是否有某键,可以使用in 或 not in;

d = {}d["1"] = "one"d["2"] = "two"d["3"] = "three"

del d["3"]

for key, value in d.items():    print "%s --> %s" % (key, value)#1 --> one#2 --> two

    dict函数如下:

    clear()  ---删除字典中所有元素

d1 = {"1":"one", "2":"two"}d1.clear()

print d1 # {}

    copy()  ---返回字典的一个副本(浅复制)

d1 = {"1":"one", "2":"two"}d2 = d1.copy()

print d2 #{‘1‘: ‘one‘, ‘2‘: ‘two‘}

    dict.fromkeys(seq,val=None) ---创建并返回一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值(默认为None)

l = [1, 2, 3]t = (1, 2, 3)

d3 = {}.fromkeys(l)print d3 #{1: None, 2: None, 3: None}

d4 = {}.fromkeys(t, "default")print d4 #{1: ‘default‘, 2: ‘default‘, 3: ‘default‘}

    get(key,[default])  ---返回字典dict中键key对应值,如果字典中不存在此键,则返回default 的值(default默认值为None)

d5 = {1:"one", 2:"two", 3:"three"}

print d5.get(1) #oneprint d5.get(5) #Noneprint d5.get(5, "test") #test

    has_key(key)  ---判断字典中是否有键key

d6 = {1:"one", 2:"two", 3:"three"}

print d6.has_key(1)  #Trueprint d6.has_key(5)  #False

    items()  ---返回一个包含字典中(键, 值)对元组的列表

d7 = {1:"one", 2:"two", 3:"three"}

for item in d7.items():    print item#(1, ‘one‘)#(2, ‘two‘)#(3, ‘three‘)

for key, value in d7.items():    print "%s -- %s" % (key, value)#1 -- one#2 -- two#3 -- three

    keys()  ---返回一个包含字典中所有键的列表

d8 = {1:"one", 2:"two", 3:"three"}

for key in d8.keys():    print key#1#2#3

    values()  ---返回一个包含字典中所有值的列表

d8 = {1:"one", 2:"two", 3:"three"}

for value in d8.values():    print value#one#two#three

    pop(key, [default])  ---若字典中key键存在,删除并返回dict[key],若不存在,且未给出default值,引发KeyError异常

d9 = {1:"one", 2:"two", 3:"three"}print d9.pop(1) #oneprint d9 #{2: ‘two‘, 3: ‘three‘}print d9.pop(5, None) #Nonetry:    d9.pop(5)  # raise KeyErrorexcept KeyError, ke:    print  "KeyError:", ke #KeyError:5

    popitem()  ---删除任意键值对,并返回该键值对,如果字典为空,则产生异常KeyError

d10 = {1:"one", 2:"two", 3:"three"}

print d10.popitem()  #(1, ‘one‘)print d10  #{2: ‘two‘, 3: ‘three‘}

    setdefault(key,[default])  ---若字典中有key,则返回vlaue值,若没有key,则加上该key,值为default,默认None

d = {1:"one", 2:"two", 3:"three"}

print d.setdefault(1)  #oneprint d.setdefault(5)  #Noneprint d  #{1: ‘one‘, 2: ‘two‘, 3: ‘three‘, 5: None}print d.setdefault(6, "six") #sixprint d  #{1: ‘one‘, 2: ‘two‘, 3: ‘three‘, 5: None, 6: ‘six‘}

    update(dict2)  ---把dict2的元素加入到dict中去,键字重复时会覆盖dict中的键值

d = {1:"one", 2:"two", 3:"three"}d2 = {1:"first", 4:"forth"}

d.update(d2)print d  #{1: ‘first‘, 2: ‘two‘, 3: ‘three‘, 4: ‘forth‘}

    viewitems()  ---返回一个view对象,(key, value)pair的列表,类似于视图。优点是,如果字典发生变化,view会同步发生变化。在

  迭代过程中,字典不允许改变,否则会报异常

d = {1:"one", 2:"two", 3:"three"}for key, value in d.viewitems():    print "%s - %s" % (key, value)#1 - one#2 - two#3 - three

    viewkeys()  ---返回一个view对象,key的列表

d = {1:"one", 2:"two", 3:"three"}for key in d.viewkeys():    print key#1#2#3

    viewvalues()  ---返回一个view对象,value的列表

d = {1:"one", 2:"two", 3:"three"}for value in d.viewvalues():    print value#one#two#three

  4. 序列

    序列类型是指容器内的元素从0开始的索引顺序访问,一次可以访问一个或者多个元素;列表、元组和字符串都是序列;序列的两个主要特点是

  索引操作符和切片操作符;索引可以得到特定元素;切片可以得到部分序列;

 1 numbers = ["zero", "one", "two", "three", "four"] 2  3 print numbers[1] # one 4 print numbers[-1] # four 5 #print numbers[5] # raise IndexError 6  7 print numbers[:] # [‘zero‘, ‘one‘, ‘two‘, ‘three‘, ‘four‘] 8 print numbers[3:] # [‘three‘, ‘four‘] 9 print numbers[:2] # [‘zero‘, ‘one‘]10 print numbers[2:4] # [‘two‘, ‘three‘]11 print numbers[1:-1] # [‘one‘, ‘two‘, ‘three‘] 

    切片操作符中的第一个数(冒号之前)表示切片开始的位置,第二个数(冒号之后)表示切片到哪里结束。 如果不指定第一个数,Python就从

  序列首开始。如果没有指定第二个数,则Python会停止在序列尾。 注意,返回的序列从开始位置 开始 ,刚好在结束位置之前 结束。即开始位置是

  包含在序列切片中的,而结束位置被排斥在切片外。 可以用负数做切片。负数用在从序列尾开始计算的位置。
  5. 绑定

    当创建一个对象并给它赋一个变量的时候,这个变量仅仅“指向”那个对象,而不是表示这个对象本身! 也就是说,变量名指向计算机中存储那个

  对象的内存,这被称作名称到对象的绑定

    如果要复制一个列表或者类似的序列或者其他复杂的对象(不是如整数那样的简单对象),那么必须使用切片操作符来取得拷贝。

---------------------------------------------- 见续 Python 基础语法(三) ----------------------------------------------

时间: 2024-10-13 12:29:09

Python 基础语法(二)的相关文章

Python基础语法(转)

作者:Peter 出处:http://www.cnblogs.com/Peter-Zhang/ Python 基础语法(一) Python的特点 1. 简单 Python是一种代表简单思想的语言. 2. 易学 Python有极其简单的语法. 3. 免费.开源 Python是FLOSS(自由/开放源码软件)之一. 4. 高层语言 使用Python编写程序时无需考虑如何管理程序使用的内存一类的底层细节. 5. 可移植性 Python已被移植到很多平台,这些平台包括Linux.Windows.Free

Python 基础语法(三)

Python 基础语法(三) --------------------------------------------接 Python 基础语法(二)-------------------------------------------- 七.面向对象编程 python支持面向对象编程:类和对象是面向对象编程的两个主要方面,类创建一个新的类型,对象是这个类的实例. 对象可以使用普通的属于对象的变量存储数据,属于对象或类的变量被称为域:对象也可以使用属于类的函数,这样的函数称为类的方法:域和方法可

python基础语法(一)

Python的特点 1. 简单 Python是一种代表简单思想的语言. 2. 易学 Python有极其简单的语法. 3. 免费.开源 Python是FLOSS(自由/开放源码软件)之一. 4. 高层语言 使用Python编写程序时无需考虑如何管理程序使用的内存一类的底层细节. 5. 可移植性 Python已被移植到很多平台,这些平台包括Linux.Windows.FreeBSD.Macintosh.Solaris.OS/2.Amiga.AROS.AS/400. BeOS.OS/390.z/OS.

python基础语法(三)

--------------------------------------------接 Python 基础语法(二)-------------------------------------------- 七.面向对象编程 python支持面向对象编程:类和对象是面向对象编程的两个主要方面,类创建一个新的类型,对象是这个类的实例. 对象可以使用普通的属于对象的变量存储数据,属于对象或类的变量被称为域:对象也可以使用属于类的函数,这样的函数称为类的方法:域和方法可以合称为类的属性. 域有两种类

python基础语法(二)

------------------------------------------接 Python 基础语法(一) -------------------------------------------- 2. 元组 tuple和list十分相似,但是tuple是不可变的,即不能修改tuple,元组通过圆括号中用逗号分割的项定义:支持索引和切片操作:可以使用 in 查看一个元素是否在tuple中.空元组():只含有一个元素的元组("a",) #需要加个逗号 优点:tuple比list

python之最强王者(2)——python基础语法

背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于python学习,直接使用pycharm IDE开发. 一.第一个python程序 按照套路,入我编程界的门,必须得遵守门规,先来个hello,world,先干为敬! 客官请看图: 运行结果如下图: 看到这里不知道你想说什么,但是我只能说 想一下,java写出一个hello,world得有main方法吧,这得

Python基本语法[二],python入门到精通[四]

在上一篇博客Python基本语法,python入门到精通[二]已经为大家简单介绍了一下python的基本语法,上一篇博客的基本语法只是一个预览版的,目的是让大家对python的基本语法有个大概的了解.之所以将python的基本语法分为两部分,是因为园子里大部分人都是有编程基础的,所以在学习Python的时候可以先出个预览版的,预览版都是根据Python的语法与其他语言(java/C#/php)比较类似又不完全一样的地方,便于大家对Python有个基本理解.在大家差不多有个了解以后,我们再深入讲讲

Python 基础语法(四)

Python 基础语法(四) --------------------------------------------接 Python 基础语法(三)-------------------------------------------- 十.Python标准库 Python标准库是随Pthon附带安装的,包含了大量极其有用的模块. 1. sys模块 sys模块包含系统对应的功能 sys.argv ---包含命令行参数,第一个参数是py的文件名 sys.platform ---返回平台类型 sy

【转】Python基础语法

[转]Python基础语法 学习一门编程语言,通常是学习该语言的以下几个部分的内容: 基础语法:如,变量的声明与调用.基本输出语句.代码块语法.注释等: 数据类型:通常都为 数字.字符串.布尔值.数组.链表.Map.Set等: 运算符:算术运算符.赋值运算符.比较运算符.逻辑运算符.位运算符等: 流程控制语句:分支语句.循环语句: 类的定义与使用:这个是面向对象编程语言才有的内容: 常用API的使用:常用方法.工具类或模块的使用. 掌握上面的内容,就算是对一门编程语言入门了,剩下的就是不断的在使