01-31-python基础学习-0423

理解变量在计算机内存中的表示也非常重要

A = ‘abc’时

Python解释器干了两件事情:

1.在内存中创建了一个‘ABC’的字符串
2.在内存中创建了一个名为A的变量,并把它指向‘ABC’
eg:
a = ‘red’
a = ‘blue’
b = a
b = ‘black’
print(a)

Python字符串

python中字母与ascii码的相互转换

ord©:参数是长度为1的字符串,简称字符。ord(‘a’)返回整形数值97
chr(i):返回一个字符,字符的ascii码等于参数中的整形数值。例如chr(97)返回字符’a’,该方法是ord()的反方法。参数必须是0-255的整形数值,否则会抛出valueError错误
% -----------------占位符。
%s ----------------表示字符串的占位符。
%d-----------------表示整数的占位符

常见的占位符: %d %f %s
%2d -----表示两个占位符,如果数不够,用空格来站位
%02d-----也表示两个占位符,如果数不够,用0来站位
%.2f ------保留小数点后面两位。
语法以及定义方式:
a = [] : []------方括号表示集合;【】[]

len(classmates)-1: 表示列表当中最后一个元素的索引。
L[3] = L[len(classmates)-1]

添加元素方法:
append() : 在列表最后插入元素 (一个参数)
insert():在指定索引处,插入元素。(两个参数)
列表内置方法:
pop() :删除列表当中最后一个元素
pop(index): 删除指定索引的元素
append(value) : 在列表最后插入元素 (一个参数)
insert(index,value):在指定索引处,插入元素。(两个参数)

列表:

list列表: 一种数据类型,有序集合,可以任意添加删除元素。 []
tuple元组:也是一种数据类型,有序,不能添加或删除元素
tuple的意义优点:tuple一但初始化就不能修改了,代码更安全。如果可能,能有tuple代替list就尽量用tuple。
tuple 的缺陷:当你定义一个tuple时,在定义的时候,tuple 的元素就必须被确定下来。

条件·判断语句:
从上往下判断,如果在某个判断上为True,那么把判断对应的语句执行后,
就忽略掉剩下的elif和else。
结尾一定是else
练习:
小明身高1.75m,体重80.5kg。请根据BMI公式(体重除以身高的平方)帮小明计算他的BMI指数,并根据BMI指数:
低于18.5:过轻
18.5-25:正常
25-28:过重
28-32:肥胖
高于32:严重肥胖
用if-elif判断并打印结果:

height = 1.75
weight = 80.5
bmi = ???
if ???:
print(“”)
答案:
name = input(“请输入名字:”)
weight = float(input(“请输入体重:”))
height = float(input(“请输入身高:”))
bmi = weight/(height*height)
if bmi<18.5:
print(name,“的bmi为:%.2f,为 %s” % (bmi,“过轻”))
elif bmi<=25:
print(name, “的bmi为:%.2f,为 %s” % (bmi, “正常”))
elif bmi<=28:
print(name, “的bmi为:%.2f,为 %s” % (bmi, “过重”))
elif bmi<=32:
print(name, “的bmi为:%.2f,为 %s” % (bmi, “肥胖”))
else:
print(name, “的bmi为:%s,为 %s” % (bmi, “严重肥胖”))

循环:
for循环语法:

for迭代变量in对象(序列):
在这里插入图片描述
Range(N)---------生成0-N个元素组成的列表。 [0,N)左闭右开
Range(m,n)----------生成m-n个元素组成的列表
Range[0,100,2]----------在[0-99)中,以step=2的间隔生成元素,组成列表
While循环:

语法:

While循环 条件表达式:
循环体

在这里插入图片描述
Python 的循环有两种,一种是 for…in 循环,依次把 list 或 tuple 中的每个元素迭代出来

for循环语法:

for 迭代变量 in 对象(序列):
循环体
userName = [‘zhangsan’, ‘lisi’, ‘wangwu’, ‘xiaoming’, ‘小红’]

for name in userName:

print(name)

‘’’

所以for name in userName: 循环就是把userName 的每个元素代入变量name,然后执行缩进块的语句

注意:

for name in userName:

    print(name)

1.name变量的名字是我们随便取的,但是一般情况下要遵循驼峰命名法。也就是你自己要清楚你取的名字的意思。

2.userName ----一般情况下是可以迭代的元素,如list何tuple ,字符串。

3.低层运行流程: 

    首先,判断userName里面是否有第一个元素,如果有,将userName 的第一个元素的值赋值给 name。如果没有,则结束循环。
     然后,判断userName里面是否有下一个元素,如果有,将userName 的下一个元素的值赋值给name。如果没有,则结束循环。

4.注意一定要有冒号

s
continue语句会立即跳到循环的顶端,即跳过本次循环,执行下一次循环
break 语句会立即离开循环
.打印输出(循环):
(1)
*
**




for i in range(5):
print(’’(5-i),’’*(i+1))

.缩进符号很重要
如果全篇(就是python代码)没有缩进“tab”,那说明没有for while if
else eilf 等条件(流程)控制语句和循环控制语句。

#for i in range(5):
#print(" “(5-i),"”*(i+1))
#定义好字典 {键:值,键:值}键:值,以逗号分隔
d = {“zhangsan”: 89, “lisi”: 90, “wangwu”: 78}
print(d)
print(d[“zhangsan”]) # 取字典里面的某个值
#改变字典当中的值
方式一
d[“zhangsan”]=99
print(d[“zhangsan”])
#如果键不存在于字典当中会报错。

d[“xiaoming”]

KeyError: ‘xiaoming’

#判断键是否存在于字典当中
print("----:",d.get(“lisi1”))

#删除字典当中的wangwu元素
d.pop(“wangwu”)
print(d)

一行一行的输出字典当中的键值

print(d[“zhangsan”])
print(d[“zhangsan”])
print(d[“lisi”])

#循环打印字典
d1 = {“zhangsan”: 89, “lisi”: 90, “wangwu”: 78}
for i in d1: # i 表示的是字典当中的键, d[i]—字典当中的值
print("—",i,d1[i])
和list相比,dict的优缺点
‘’’
1.查找和插入的速度快,不会随着key的增加而增加
2.需要占用大量内存,内存浪费
‘’’

list 优缺点

‘’’
1.查找和插入的时间,随着元素的增加而增加
2.占用空间小,浪费内存小。
‘’’
#dict的注意事项
‘’’
字典当中的key是不可变对象,唯一,不能重复
通过key计算位置的算法(字典),我们称为: 哈希算法
‘’’

a = {1:“asd”,1:“qwe”}

print(a)

dic1 = {“zhangsan”:[180,87,98]}
#如何取87
l = dic1[“zhangsan”]
l[1]
print(dic1[“zhangsan”][1])

dic2 = {‘lisi’:{“爱好”:[1,2,3],“score”:98}}
#如何取3
a = dic2[‘lisi’][“爱好”][2]
print(a)

‘’’

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值