Python常用的内置序列结构(列表、元组、字典)学习笔记 列表与元组 列表用大括号[]表示,元组用圆括号()表示。 列表可以修改,字符串与元组不可修改。 元组的分片还是元组,列表的分片还是列表。 1.列表方法: name=["zhang3","li4","wang5"] name.append("gou6") #添加项 name.remove("gou6") #移除第一个匹配项,也可用del name[3]来移除 name.insert(3,"gou6") #插入项 name.index("gou6") #找出第一个匹配项的位置 name.extend(["gou6","xuan7"]) #扩展 name.pop(0) #返回列表的第一项值并从列表中删除之 2.列表函数: >>> a=list("hi guys") #把字符串转换为列表 >>> print a ['h', 'i', ' ', 'g', 'u', 'y', 's'] >>> ''.join(a) #把列表还原成字符串 'hi guys' >>> max(a) #取得列表的最大元素 'y' >>> len(a) #取得列表长度 7 >>> min(a) #取得最小元素 ' ' >>> tuple(a) #将列表转换为元组 ('h', 'i', ' ', 'g', 'u', 'y', 's') >>> sorted(a) #将列表元素排序 [' ', 'g', 'h', 'i', 's', 'u', 'y'] 3.列表遍历: A,使用for语句遍历 for each_item in name: print(each_item) B,使用while语句遍历 i=0 while i < len(name): print(name[i]) i += 1 4.成员资格1: >>> sub="hello, you are a bear" >>> "bear" in sub True >>> "y" in sub True >>> raw_input("what's your name?") in sub what's your name?bear True 5.成员资格2: database=[ ["zhang3","0111"], ["li4","0112"], ["wang5","0113"] ] username=raw_input("what's your user name?") id=raw_input("what's your id?") if [username,id] in database: print "access granted" 6.找出10以内的整数 s = [x for x in range(0, 10) if x % 2 == 0] 7.生成九九乘法表 s = [(x, y, x*y) for x in range(1, 10) for y in range(1,10) if x>=y] 字符串 1.获取字符串 name=raw_input("what's your name?") print "Hello," + name + ".welcome to us" 注意:Pyhton3.x版本取消了raw_input,统一使用input 输出值: print name + repr(x) #str用于把值转换为合理的字符串,repr创建一个字符串,返回值的字符串形式 #str是一种类型(和int一样),repr是函数 2.换行符用\n表示 原始字符串,以字符串前加一个r即可,如 print r"c:\nowindows\no" path="c:\nowindows\no"; print repr(path) 3.Unicode字符串 print u"redhat" 注意:Pyhton3.x版本所有字符串都是unicode字符串 定义字符串时,双引号和单引号都是可以用的,只不过用单引号的时候可以在字符串里面使用双引号 布尔值: >>> bool('i love you') True >>> bool(42) True >>> bool(1) True >>> bool('0') True >>> bool(0) False >>> bool('') False 4.字符串方法 >>> tag="baidu indexpage" >>> print tag[8:28] #字符串分片 http://www.baidu.com >>> print tag[29:-4] #字符串分片 baidu indexpage >>> tag.replace("www.baidu.com","home.sina.com") #字符串替换 'baidu indexpage' >>> dirs=["","usr","bin","env"] >>> "/".join(dirs) #将列表拼接成字符串 '/usr/bin/env' >>> print ("C:" + "\\".join(dirs)) C:\usr\bin\env >>> path="/usr/bin/env" >>> path.split("/") #将字符串分割成列表 ['', 'usr', 'bin', 'env'] 5.其它字符串方法 >>> s=' I Love you! ' >>> s.lower() #转换字符串的小写 ' i love you! ' >>> s.upper() #转换字符串的大写 ' I LOVE YOU! ' >>> s.title() #换换字符串为标题(所有单词首字母大写) ' I Love You! ' >>> s.islower() #判断字符串是否为小写(也可判断大写和标题) False >>> s.strip() #去除首尾空格,lstrip去除左边空格,rstrip去除右边空格 'I Love you!' >>> word=s.split() #分割 >>> word ['I', 'Love', 'you!'] >>> '::'.join(word) #合并 'I::Love::you!' >>> s.count('o') #统计出现次数 2 >>> s.find('you') #查找位置,如果找不到,则返回-1 9 >>> s.startswith('python') False >>> s.replace('you','yours') ' I Love yours! '