列表与元组
列表用大括号[]表示,元组用圆括号()表示。
列表可以修改,字符串与元组不可修改。
元组的分片还是元组,列表的分片还是列表。
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! \'