Python常用的内置序列结构(列表、元组、字典)学习笔记

作者:bear 时间:2021-02-18 21:25:45 

列表与元组
列表用大括号[]表示,元组用圆括号()表示。
列表可以修改,字符串与元组不可修改。
元组的分片还是元组,列表的分片还是列表。

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="<a href=http://www.baidu.com>baidu indexpage</a>"
>>> print tag[8:28] #字符串分片
http://www.baidu.com
>>> print tag[29:-4] #字符串分片
baidu indexpage
>>> tag.replace("www.baidu.com","home.sina.com") #字符串替换
'<a href=http://home.sina.com>baidu indexpage</a>'

>>> 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!  '
标签:Python,序列
0
投稿

猜你喜欢

  • mysql动态游标学习(mysql存储过程游标)

    2024-01-21 12:58:50
  • Javascript验证方法大全

    2024-04-17 10:19:44
  • Python中使用logging和traceback模块记录日志和跟踪异常

    2023-09-20 16:08:51
  • asp我对后台安全的一些做法

    2011-09-01 19:22:09
  • MySQL字符集查看方法

    2010-12-14 15:14:00
  • Python猴子补丁Monkey Patch用法实例解析

    2022-02-20 06:45:01
  • 使用jQuery.form.js/springmvc框架实现文件上传功能

    2024-04-09 19:46:12
  • 浅谈如何使用python抓取网页中的动态数据实现

    2021-10-19 08:47:18
  • 详解MySQL中的NULL值

    2024-01-14 16:05:00
  • Bootstrap进度条与AJAX后端数据传递结合使用实例详解

    2024-04-28 10:18:32
  • 详解Vue.use自定义自己的全局组件

    2024-05-02 17:02:59
  • 如何使用Git实现切换分支开发过程解析

    2022-07-03 20:57:06
  • ThinkPHP中URL路径访问与模块控制器之间的关系

    2024-05-05 09:16:40
  • python字典按照value排序方法

    2021-01-31 06:13:16
  • Python利用wxPython制作股票价格查询工具

    2021-11-25 19:09:52
  • asp如何实现聊天对象的链接?

    2010-05-19 21:34:00
  • Python 3.10 中 6 个兴奋的新特性

    2021-02-21 03:30:26
  • python读取查看npz/npy文件数据以及数据完全显示方法实例

    2022-05-15 15:45:36
  • Vue+Axios实现文件上传自定义进度条

    2024-05-29 22:24:57
  • Python PCA降维的两种实现方法

    2022-03-05 04:25:47
  • asp之家 网络编程 m.aspxhome.com