跟着廖雪峰学python 003

 跟着廖雪峰学python 003跟着廖雪峰学python 003编辑

 

 列表和元组

list 是一种有序、可变的数据类型,可添加删除其中的元素。

len()函数:可以获取列表元素的个数

classmates = ['Micheal' , 'Bob' , 'James']
print(classmates)
print(len(classmates))

跟着廖雪峰学python 003

Terminal:        跟着廖雪峰学python 003跟着廖雪峰学python 003编辑

 

 用索引来读取列表里的元素,从0开始,最后一个可以用-1或len(classmates)-1表示

classmates = ['Micheal' , 'Bob' , 'James']
print(classmates[0])
print(classmates[-1])
print(classmates[len(classmates)-1])

跟着廖雪峰学python 003

Terminal:        跟着廖雪峰学python 003跟着廖雪峰学python 003编辑

 倒数第二位可以用-2表示,以此类推。索引超出范围会报错

 

append()函数:列表末尾加元素

insert()函数:在列表指定位置添加元素

pop()函数:删除列表指定位置元素,括号空默认删除最后一个元素

classmates = ['Micheal' , 'Bob' , 'James']
print(classmates)
classmates.append('Lebron')
print(classmates)
classmates.insert(1,'Jordan')
print(classmates)
classmates.pop()
print(classmates)
classmates.pop(1)
print(classmates)

跟着廖雪峰学python 003

Terminal:        跟着廖雪峰学python 003跟着廖雪峰学python 003编辑

 

列表中的某个元素换成其他,可以直接赋值给对应的索引位置

classmates = ['Micheal' , 'Bob' , 'James']
classmates[1]='Jordan'
print(classmates)

跟着廖雪峰学python 003

Terminal:        跟着廖雪峰学python 003跟着廖雪峰学python 003编辑

 

列表中的元素数据类型可以不同,列表也可以作为另一个列表的元素

L = ['Apple', 123, True]
S=['php','html']
L.insert(1,S)
print(L)
print(len(L))
print(L[1][0])

跟着廖雪峰学python 003

Terminal:        跟着廖雪峰学python 003跟着廖雪峰学python 003编辑

tuple:元组,是一种有序列表

tuple和list相似,但是tuple一旦初始化就不可以修改,也不可以使用上面的添加、删除函数,但可以通过索引地址正常读取

classmates = ('Michael', 'Bob', 'Tracy')
print(classmates[0])
print(classmates[-1])

跟着廖雪峰学python 003

Terminal:        跟着廖雪峰学python 003跟着廖雪峰学python 003编辑

 

因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple

tuple的陷阱:当你定义一个tuple时,在定义的时候,tuple的元素就必须被确定下来

 

定义一个空的tuple  写成:t = ()

定义一个元素的tuple    写成:t = (1) ×

这样定义的不是tuple,是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1

所以,只有1个元素的tuple定义时必须加一个逗号,,来消除歧义:

如: t = (1, )

Python在显示只有1个元素的tuple时,也会加一个逗号,以免你误解成数学计算意义上的括号。

 

当tuple中的一个元素是列表时,可以改变列表里的元素

t = ('a', 'b', ['A', 'B'])
t[2][0] = 'X'
t[2][1] = 'Y'
print(t)

跟着廖雪峰学python 003

Terminal:        跟着廖雪峰学python 003跟着廖雪峰学python 003编辑

 tuple的不变指的是元素指向永远不变,上面指向的列表一直都是相同的列表,改变的是列表里的元素。

条件判断

age = 3
if age >= 18:
    print('your age is', age)
    print('adult')
else:
    print('your age is', age)
    print('teenager')

跟着廖雪峰学python 003

Terminal:        跟着廖雪峰学python 003跟着廖雪峰学python 003编辑

 

elifelse if的缩写,完全可以有多个elif

age = 3
if age >= 18:
    print('adult')
elif age >= 6:
    print('teenager')
else:
    print('kid')

跟着廖雪峰学python 003

Terminal:        跟着廖雪峰学python 003跟着廖雪峰学python 003编辑

 

if x:
    print('True')

跟着廖雪峰学python 003

只要x是非零数值、非空字符串、非空list等,就判断为True,否则为False

跟着廖雪峰学python 003跟着廖雪峰学python 003编辑


本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:跟着廖雪峰学python 003 - Python技术站

(0)
上一篇 2023年3月31日
下一篇 2023年3月31日

相关文章

  • 跟着廖雪峰学python 005

    ​  函数的调用、定义、参数  ​编辑  #######命名关键字参数没完 abs()函数:绝对值 >>> abs(100) 100 >>> abs(-20) 20 max()函数:接收任意多个参数,并返回最大的那个 >>> max(1, 2) 2 >>> max(2, 3, 1, -5…

    Python开发 2023年3月31日
    00
  • 跟着廖雪峰学python 006

    ​ 递归函数 在函数内部调用自身本身 计算阶乘: def fact(n): if n == 1: return 1 return n * fact(n – 1) 注意:使用递归函数需要防止栈溢出。 在计算机中,函数调用是通过栈(stack)实现,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减少一层栈帧。由于栈的大小不是无限的,所以递归调用的次…

    2023年3月31日
    00
合作推广
合作推广
分享本页
返回顶部