一、使用list和tuple
Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。
classmates = ['Michael', 'Bob', 'Tracy']
print classmates[0]
classmates.append('jinzk')
print classmates[3]
classmates.pop(1)
print classmates
classmates.insert(1, 'Jack')
print classmates
另一种有序列表叫元组:tuple。tuple和list非常类似,但是tuple一旦初始化就不能修改,比如同样是列出同学的名字:
classmates = ('Michael', 'Bob', 'Tracy')
现在,classmates这个tuple不能变了,它也没有append(),insert()这样的方法。其他获取元素的方法和list是一样的,你可以正常地使用classmates[0],classmates[-1],但不能赋值成另外的元素。
Python在显示只有1个元素的tuple时,也会加一个逗号,,以免你误解成数学计算意义上的括号。
t = (1)
print t
t = (1,)
print t
最后来看一个“可变的”tuple:
t = ('a', 'b', ['A', 'B'])
t[2][0] = 'X'
t[2][1] = 'Y'
print t
这个tuple定义的时候有3个元素,分别是'a','b'和一个list。不是说tuple一旦定义后就不可变了吗?怎么后来又变了?
别急,我们先看看定义的时候tuple包含的3个元素:
当我们把list的元素'A'和'B'修改为'X'和'Y'后,tuple变为:
表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向'a',就不能改成指向'b',指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!
理解了“指向不变”后,要创建一个内容也不变的tuple怎么做?那就必须保证tuple的每一个元素本身也不能变。
小结
list和tuple是Python内置的有序集合,一个可变,一个不可变。根据需要来选择使用它们。
二、再议raw_input
很多同学会用raw_input()读取用户的输入,这样可以自己输入,程序运行得更有意思:
birth = raw_input('birth: ')
if birth < 2000:
print '00前'
else:
print '00后'
输入1982,结果却显示00后,这么简单的判断Python也能搞错?
当然不是Python的问题,在Python的交互式命令行下打印birth看看:
>>> birth
'1982'
>>> '1982' < 2000
False
>>> 1982 < 2000
True
原因找到了!原来从raw_input()读取的内容永远以字符串的形式返回,把字符串和整数比较就不会得到期待的结果,必须先用int()把字符串转换为我们想要的整型:
birth = int(raw_input('birth: '))
三、使用dict和set
Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。
d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
print d.get('Michael')
print d.get('Michael',-1)
print d.get('Michael1',-1)
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。
要创建一个set,需要提供一个list作为输入集合:
s = set([1, 2, 3])
print s
s = set([1, 1, 2, 2, 3, 3])
print s
s.add(4)
print s
s.remove(4)
print s
s1 = set([1, 2, 3])
s2 = set([2, 3, 4])
print s1 & s2
print s1 | s2
a = ['c', 'b', 'a']
a.sort()
print a
a = 'abc'
a = a.replace('a','A')
print a
要始终牢记的是,a是变量,而'abc'才是字符串对象!有些时候,我们经常说,对象a的内容是'abc',但其实是指,a本身是一个变量,它指向的对象的内容才是'abc':
当我们调用a.replace('a', 'A')时,实际上调用方法replace是作用在字符串对象'abc'上的,而这个方法虽然名字叫replace,但却没有改变字符串'abc'的内容。相反,replace方法创建了一个新字符串'Abc'并返回,如果我们用变量b指向该新字符串,就容易理解了,变量a仍指向原有的字符串'abc',但变量b却指向新字符串'Abc'了:
- 大小: 3.2 KB
- 大小: 3.2 KB
- 大小: 1.2 KB
- 大小: 1.7 KB
分享到:
相关推荐
Python全套教程 Python基础python基础课代码+文档2023最新教程【樵夫教你学Python】Python全套教程 Python基础python基础课代码+文档2023最新教程【樵夫教你学Python】Python全套教程 Python基础python基础课代码+...
Python是世界上最受欢迎的编程语言之一,尤其适合初学者入门。在Python编程中,了解脚本第一行的作用至关重要,特别是对于那些在Linux或Unix系统...在学习Python基础的过程中,掌握这一细节将对你的编程实践大有裨益。
《Python基础教程(第2版)》是一本全面介绍Python编程的指南,适合初学者入门。Python作为一种解释型、面向对象、动态数据类型的高级程序设计语言,因其简洁的语法和强大的功能而广受欢迎。该书分为基础篇和高级篇...
Python 基础教程知识点总结 本资源摘要信息涵盖 Python 基础教程的 60 课内容,涵盖 Python 基础知识点的所有方面。 安装和设置 * Python 的安装和设置(Python 第 1 课) + 介绍 Python 的安装过程和设置环境 ...
pythonpdf教程_python基础教程pdf Python 学习路线图 ⼀、 Python 学习的四个阶段 第⼀阶段 该阶段⾸先通过介绍不同领域的三种操作系统,操作系统的发展简史以及 Linux 系统的⽂件⽬录结构让⼤家对 Linux 系统有⼀个...
python 基础教程 第二版 高清 书签 中文: 本书包括Python程序设计的方方面面,首先从Python的安装开始,随后介绍了Python的基础知识和基本概念,包括列表、元组、字符串、字典以及各种语句。然后循序渐进地介绍了...
《Python基础教程第二版》是针对初学者的一本经典教材,尤其适合那些对Python 2.0版本感兴趣的读者。本书全面、深入地介绍了Python编程语言的基础概念和语法,旨在帮助读者掌握这一强大而灵活的编程工具。以下是根据...
python教程英语版_Python基础教程第3版英⽂原版pdf 资源名称:Python基础教程第3版 英⽂原版pdf Magnus Lie Hetland⼜更新他的 "Beginning Python From Novice to Professional"了,该书为第三版英⽂,基于Python3.5...
《Python基础教程(第三版)》是一本专为初学者设计的Python编程教材,全面覆盖了Python语言的基础知识,旨在帮助读者快速掌握Python编程技能。本教程以清晰易懂的语言和丰富的实例,引领读者深入理解Python的核心...
【Python基础入门教程 Python语言编程导论】课程列表 Python基础入门教程 Python语言编程导论 Python应用案例1 (共12页).ppt Python基础入门教程 Python语言编程导论 Python应用案例二 (共24页).ppt Python基础...
【Python基础】 Python是一种高级编程语言,以其简洁明了的语法和强大的功能深受程序员喜爱。本课件主要涵盖Python的基础知识,旨在引导初学者进入Python3.5的精彩世界。Python具有丰富的库支持,广泛应用于数据分析...
《Python基础教程(第2版 修订版)》是一本深入浅出的Python编程入门书籍,旨在引导初学者全面掌握Python语言的核心概念和技术。这本书详细介绍了Python程序设计的各种要素,涵盖了从基本语法到高级特性,旨在帮助读者...
Python基础入门教程 由浅入深讲解清晰 第1章 基础知识 (共44页).ppt Python基础入门教程 由浅入深讲解清晰 第2章 Python序列 (共68页).ppt Python基础入门教程 由浅入深讲解清晰 第3章 选择与循环 (共44页)....
Python基础试题解析 本资源摘要信息对Python基础试题进行了详细的解析,涵盖了Python语言的基础知识点,包括变量、数据类型、运算符、控制结构、函数、列表、文件操作等方面。 一、选择题 1. 在 Python 中,设 a=...
《Python基础教程(第2版·修订版)》是经典的Python入门教程,层次鲜明,结构严谨,内容翔实,特别是最后几章,作者将前面讲述的内容应用到10个引人入胜的项目中,并以模板的形式介绍了项目的开发过程,手把手教授...
《Python基础教程(第二版)》是一本深受Python初学者喜爱的经典教材,它以其清晰的讲解和丰富的示例引领读者逐步掌握Python编程的基础知识。源代码.zip文件包含了本书中的所有实例代码,是学习过程中不可或缺的参考...
《Python基础语法全讲解》是马哥教育推出的一套60集完整的Python教程,专为运维人员设计,旨在提供全面的Python基础知识。本教程涵盖了从Python编程语言的初识、编程环境的准备到高级特性的深入理解,为学习者打造了...
"Python基础"这个主题涵盖了Python语言的基本概念、语法结构以及常见应用。 "Python-一切开始之前.pdf"可能是一份引导性的文档,旨在帮助初学者建立对Python编程的初步认识。它可能会讲解Python的历史、为什么要...
Python基础语法合集 Python 是一种高级的、解释型的编程语言,它具有简洁的语法、灵活的数据结构、丰富的标准库和跨平台的特性。Python 语言的基础语法包括变量、数据类型、操作符、控制结构、函数、模块等几个方面...