python基础笔记 02-2021-09-17

1. list和tuple

① list

list的初步认识

  • list是一种有序的集合,可以随时添加和删除其中的元素。
  • a = [1,23,4,‘a’],a就是一个list (a=[],此时a就是一个空的列表)

list的操作

  • 查看list里面元素的个数:len(a)

  • 访问list里的元素:a[0],a[1],a[-1],……,通过他们的索引进行访问

  • 增加list里的元素:
    append:a.append(6) a---->[1,23,4,‘a’,6]
    insert:a.insert(1,‘like’) a---->[1,‘like’,23,4,‘a’]

  • 删除list里的元素:
    pop:a.pop(1) a---->[1,4,‘a’]
    pop里面没有数字的时候,默认弹出队末的元素,此例中就是‘a’

  • 替换/修改list里的元素值:
    直接通过赋值修改 a[0] = ‘more’ a---->[‘more’,23,4,‘a’]

a = []
print(len(a))
a = [1,23,4,'a']
print(len(a))
a.append(6)
print(a)
a.insert(1,'like')
print(a)
a.pop(1)
print(a)
a.pop()
print(a)
a[0] = 'more'
print(a)
0
4
[1, 23, 4, 'a', 6]
[1, 'like', 23, 4, 'a', 6]
[1, 23, 4, 'a', 6]
[1, 23, 4, 'a']
['more', 23, 4, 'a']

进程已结束,退出代码为 0

多维的list

  • 例如:b = [‘a’,1,‘v’,[‘more’,‘money’],0,45],列表b中的元素也为列表
  • 可以这样看待 b ----> [‘a’,1,‘v’,p,0,45] , p =[‘more’,‘money’]
  • 如何访问p中的元素? 访问more :p[0] or b[3][0]
b = ['a',1,'v',['more','money'],0,45]
print(b[3][0])
p = ['more','money']
#b = ['a',1,'v',p,0,45]
print(p[0],b[3][0])
more
more more

进程已结束,退出代码为 0

② tuple

  • 什么叫元组:一种初始化就不能修改的有序列表
  • 什么叫不能修改?
    不能修改元组中的元素值和元素的数量,一旦初始化确定后便无法修改。
    无法进行append,insert,pop之类操作,但是可以访问
  • “可修改”的元组:
    t = (‘a’, ‘b’, [‘A’, ‘B’])
    t[2][0] = ‘X’ ----> t = (‘a’, ‘b’, [‘X’, ‘B’])
    在这里插入图片描述
    在这里插入图片描述
  • 只有一个元素的元组:
    空的tuple: t = ()
    1个元素的tuple:t = (2)
    这样定义会产生歧义,因为(2),同样可以表示数字2,()作为一种运算符
    所以,这样定义:t = (2,)
t = ('a', 'b', ['A', 'B'])
print(len(t))
t[2][0] = 'X'
print(t)

b = (2)
print(b)

c = (2,)
print(c)
3
('a', 'b', ['X', 'B'])
2
(2,)

进程已结束,退出代码为 0
a = ('a', 'b')
a[0] = 'C'
print(a)
Traceback (most recent call last):
  File "D:\Download\.py", line 7, in <module>
    a[0] = 'C'
TypeError: 'tuple' object does not support item assignment

进程已结束,退出代码为 1

练习

  • 请用索引取出下面list的指定元素:
  • #-- coding: utf-8 --
    L = [
    [‘Apple’, ‘Google’, ‘Microsoft’],
    [‘Java’, ‘Python’, ‘Ruby’, ‘PHP’],
    [‘Adam’, ‘Bart’, ‘Lisa’]
    ]
    打印Apple:
    打印Python:
    打印Lisa:
# -*- coding: utf-8 -*-
L = [
['Apple', 'Google', 'Microsoft'],
['Java', 'Python', 'Ruby', 'PHP'],
['Adam', 'Bart', 'Lisa']
]
print('我打印出的是:','\t',L[0][0])
print('我打印出的是:','\t',L[1][1])
print('我打印出的是:','\t',L[2][2])
我打印出的是: 	 Apple
我打印出的是: 	 Python
我打印出的是: 	 Lisa

进程已结束,退出代码为 0

2.条件判断

  • 程序执行条件判断的结构:
    条件满足就跳出判断
    在这里插入图片描述
  • 简便的条件判断
if x :
	<执行内容>
只要x是非零数值、非空字符串、非空list等,就判断为True,否则为False。
age = 45
if age > 18 :
    print('你已经是一个成年人了!')

age = 17
if age >18 :
    print('你已经是一个成年人了!')
else :
    print('你还是一个小孩子!')

age = 90
if age >18 and age <60 :
    print('你已经是一个成年人了!')
elif age >60  :
    print('you are so old.')
else :
    print('你还是一个小孩子!')

x = 89
if x :
    print('砂糖')

x = 0
if x :
    print('红薯粉')
else :
    print('木薯粉')
你已经是一个成年人了!
你还是一个小孩子!
you are so old.
砂糖
木薯粉

进程已结束,退出代码为 0

  • input
    a = input() , input返回的是str,a是str类型的数据
    如果是输入数字,同样是str,需要转换:a = int(a)

age = input('告诉我,你的年龄:')
print(type(age))
age = int(age)
print(type(age))
if age >18 and age <60 :
    print('你已经是一个成年人了!')
elif age >60  :
    print('you are so old.')
else :
    print('你还是一个小孩子!')
告诉我,你的年龄:21
<class 'str'>
<class 'int'>
你已经是一个成年人了!

进程已结束,退出代码为 0

练习

  • 小明身高1.75m,体重80.5kg。请根据BMI公式(体重除以身高的平方)帮小明计算他的BMI指数,并根据BMI指数:
    低于18.5:过轻
    18.5-25:正常
    25-28:过重
    28-32:肥胖
    高于32:严重肥胖
heigth,weigth = input('请按顺序输入身高/m,体重/kg的数字,并且用空格分割:').split() #不想用两个input
heigth = float(heigth)
weigth = float(weigth)
bmi = weigth/(heigth**2)
if bmi <= 0 :
    print('输入错误!')
elif bmi <= 18.5 :
    print('你太轻了,过轻!')
elif bmi >18.5 and bmi <= 25 :
    print('正常!')
elif bmi > 25 and bmi <= 28 :
    print('过重!')
elif bmi > 28 and bmi <= 32 :
    print('肥胖!')
else :
    print('严重肥胖')

请按顺序输入身高/m,体重/kg的数字,并且用空格分割:1.75 80.5
过重!

进程已结束,退出代码为 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值