Python学习笔记(二)

知识点1:
if语句的使用,主要就是缩进和冒号的问题。
示范如下:

cars = ["bike", "tesila", "aodi", "baoma", "xuetielong"]
for car in cars:  #这里要分号
    if car == "tesila":
        print(f"这辆{car},你会刹车吗?")
    else:         #我也要我也要
        print(f"{car} is a good car")
print(cars)

知识点2:
判断相等==;判断不等!=都很简单,有手就行。然后与或非等条件判断,python采用 and or not来解决。
代码示例如下:

age = 18
if age > 17 and age < 19: #你甚至可以写成 17<age<19
    print("哇哦,永远的十八岁耶")
if age < 15 or age > 17:
    print("哇哦,你的年龄有点难猜哦")
if not age != 18:
    print("什么嘛,也就是永远十八岁嘛")

知识点3:
检测特定值是否包含在列表中

ages=[10,20,25,26,40,48]
age=19
if age in ages:
    print("这个年龄真的有欸")
else:
    print("这个年龄就是逊啦")

知识点4:
if-elif-else 其实就是 if else if else的python版本

age=16
if age<4:
    print("you are free!")
elif age<16:
   print("please show your tickets")
else:
    print("you are too old to join us")

知识点5:
当使用列表名作为判断条件时,如果列表不为空,则返回bool判断值True,如果为空,则返回bool判断值False


第六章


知识点6:
字典,有点类似于C/C++的结构体的格式。
示例如下:

example={'name':"yinfeiyu",'age':21}
print(example['name'])
print(example['age'])

输出结果为:

字典可以随时添加键值,其示例如下:

example={'name':"yinfeiyu",'age':21}
print(example)
example['sex']="man"  #我丈育了,性别应该是male和female
example['birthday']='19991113'
print(example)

输出结果如下:

可以看到结果中额外插入了两个元素,分别是sex和birthday。


知识点7:
删除键值,使用del删除键值示例如下;

example={'name':"yinfeiyu",'age':21}
print(example)
example['sex']="man"
example['birthday']='19991113'
print(example)
del example["name"]
print(example)
example[123]='wocao'  #卧槽,这也行。。。 也就是键值名不一定要是字符串,是数字也行
print(example)

知识点8:
规范化字典代码格式

example={
    1:"one",
    2:"two",
    3:"three",
    5:"five"
}
print(example[1])

知识点9:
字典的get方法:

example={
    1:"one",
    2:"two",
    3:"three",
    5:"five"
}
message=example.get(4,"sorry,we don't have this number")
message2=example.get(2,"sorry,we don't have this number")
print(message)
print(message2)

在使用诸如example[12]类似的代码时,一旦无该键值(也就是12),编译器就会报错,程序无法正确执行,但是我们可以通过get方法,在键值存在时输出对应的值,不存在时则返回我们指定的信息。

值得一提的是,如果get方法没有给出第二个参数,系统在未搜索到指定键值时自动返回None。

知识点10:
遍历整个字典,同时讲述了for循环的进阶用法。

example={
    1:"one",
    2:"two",
    3:"three",
    5:"five"
}
for number, English_number in example.items(): #注意这里的 items()
    print(f"\tnumber: {number}")
    print(f"\tEnglis_number: {English_number}")

for循环中不仅仅可以使用一个参数,另外注意使用.item()
同样 使用keys()函数可以达到同样的效果:

for number, English_number in example.items(): #注意这里的 items()
    print(f"\tnumber: {number}")
    print(f"\tEnglis_number: {English_number}")
print("------------------------------------------------")
for number in example.keys(): #keys()可以省略
    print(f"\tnumber: {number}")
    print(f"\tEnglish_number:{example[number]}")

分割线上下两部分代码完全等效。
可以利用keys()返回所有的键值,因此同样也可以利用values()返回所有的值。

但是这样也会存在一个问题,很显然我们知道字典中键不会重复,但是不能保证值不会重复,那么如果我们只想要不重复的值,就需要set() 函数。

example={
    1:"one",
    2:"two",
    3:"three",
    5:"five",
    6:"five" #我今天就是要指6为5
}
for English in set(example.values()):
    print(English)

但是使用set后 似乎会从后往前输出不重复的值,不是很明白具体实现过程。
相对的,一种同样用花括号定义的结构叫做集合,集合中会自动清除相同元素。

知识点11:
超级大杂烩之超级大嵌套。

example=[]
for i in range(0,50):  #i取值为0到49(包括49)的所有整数
    newstudent={"number": i, "class": f"160400{int((i/20+1))}"}
    example.append(newstudent)
for i in range(0,50):
    number=example[i]["number"]
    classname=example[i]["class"]
    if classname=="1604001":
        print(f"这个学生的学号是:{number},并且这个学生是1班的")
    elif classname=="1604002":
        print("这个是2班的")
    else:
        print("哥哥你是不是三班的")

顺手还回忆了一波range函数怎么用,不过说实话,python现成的函数真的多啊。
然后是切片用法:

example=[]
for i in range(0,50):  #i取值为0到49(包括49)的所有整数
    newstudent={"number": i, "class": f"160400{int((i/20+1))}"}
    example.append(newstudent)
for i in range(0,50):
    number=example[i]["number"]
    classname=example[i]["class"]
    if classname=="1604001":
        print(f"这个学生的学号是:{number},并且这个学生是1班的")
    elif classname=="1604002":
        print("这个是2班的")
    else:
        print("哥哥你是不是三班的")
for student in example[0:10]:  #这里是引号,不是逗号哥哥。
    student["number"]+=100
    print(student["number"])

知识点12:
套娃之超级套娃:(在字典中套娃列表)

#超级超级套娃
favourite_actress=["유야 3호","치썬리리","후카타 영미","타카야 에리카"]
student={
    "name":"小明",
    "tag": "LSP",
    "favourite_actress":favourite_actress,
    }
print(student)

其中 치썬리리 是这位:

套娃之超级超级套娃:(在字典中套娃字典)

#超级超级套娃
name={"first": "Y","middle": "F", "last": "Y"}
age=18 #此处应该有滑稽
example={"name":name,"age": age}
print(example["name"]["first"])

当然这只是一个非常非常简单的示例,你可以把age也塞到name里面,然后通过添加多个name,形成一个学生字典,每一项都是一个学生,学生信息又构成一个字典。


下面是第七章


知识点13:
input函数,简而言之就是读取用户输入的数据。

message=input("你最喜欢哪一位老师?")
print(message)

输出很简单,你在控制台打什么他就输出什么。

知识点14:
字符串之间的加法运算

message=input("你最喜欢哪一位老师?")
print(message)
message+=input("那你最喜欢她的哪一部作品呢?")
print(message)

事实上,你在print里面使用+也是可以做到连接字符串的作用的。

知识点15:
while的基础用法,以及continue和break用法和C++保持完全一致。

p=0
while p<10:
    print(p)
    p+=1
    if p==6:
        print("p已经足够大了,他现在是6")
    elif p==8:
        print("that is enough,stop it!")
        break

continue的用法:

p=0
while p<100:
    p+=1
    if p%2==0:
        continue
    else:
        print(p)

知识点16:
while的多种用法:

confirmed_films=["老八奥里给"]
unconfirmed_films=["giao","我是超威蓝猫","巨魔之王奥里给","大逼兜子","猕猴桃~嗷~"]
while unconfirmed_films:
    video=unconfirmed_films.pop() #pop从后往前喷射元素
    confirmed_films.append(video)
    print(confirmed_films)
confirmed_films=["老八奥里给"]
unconfirmed_films=["giao","我是超威蓝猫","巨魔之王奥里给","大逼兜子","猕猴桃~嗷~"]
#假如我们不删除 unconfirmed中的元素
number=0
while number<unconfirmed_films.__len__():
    confirmed_films.insert(0,unconfirmed_films[number])
    print(confirmed_films)
    number+=1

删除特定元素

confirmed_films=["老八奥里给"]
unconfirmed_films=[
    "giao","我是超威蓝猫","巨魔之王奥里给","大逼兜子","猕猴桃~嗷~",
    "giao","我是超威蓝猫","巨魔之王奥里给","大逼兜子",  "猕猴桃~嗷~",
    "giao","我是超威蓝猫","巨魔之王奥里给","大逼兜子","猕猴桃~嗷~",
    "giao","我是超威蓝猫","巨魔之王奥里给","大逼兜子","猕猴桃~嗷~"
                   ]
number="giao"
while number in unconfirmed_films:
    unconfirmed_films.remove(number)
    print(unconfirmed_films)

说实话,我不知道是不是我又先入为主的其他语言的学习经验,总感觉他这个思路和我想得完全不一样。

第八章转笔记三

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值