Python学习笔记编程小哥令狐~持续更新、、、 (下)

简介: Python学习笔记编程小哥令狐~持续更新、、、 (下)

Python学习笔记编程小哥令狐~持续更新、、、(上)+https://developer.aliyun.com/article/1621218

4.3.4列表解析

  • 先遍历赋值在乘方
squares=[value**2 for value in range(1,11)]
print(squares)

4.4使用列表的一部分

4.4.1切片

切片就是列表的一部分内容元素。

  • 获取列表的2~4个元素
motorcycles=['honda','yamaha','suzuki','name','fff']
print(motorcycles[1:4])
  • 获取列表从表头开始
motorcycles=['honda','yamaha','suzuki','name','fff']
print(motorcycles[:4])
  • 获取列表从表尾结束
motorcycles=['honda','yamaha','suzuki','name','fff']
print(motorcycles[2:])

4.4.2遍历切片

方法: for循环+切片

五、if语句

5.1引入例子

cars=['audi','bmw','subaru','toyota']
for car in cars:
    if car=='bmw':
        print(car.upper())
    else:
        print(car.title())

5.2条件测试

  • 每条if语句的核心就是一个值 truefalse

5.2.1检查多个条件

  1. 使用 and检查多个条件,相当于“&&”
age_0=22
age_1=18
print(age_0>=21 and age_1>21)
  1. 使用 or检查多个条件,相当于“||”
age_0=22
age_1=18
print(age_0>=21 or age_1>21)

5.2.2检查特定值是否包含在列表中

  • 关键字 in
requested_toppings=['mushrooms','onions','pineapple']
print('mushrooms' in requested_toppings)
  • 在if语句中,缩进的作用与for循环中相同,如果测试通过了,将执行if语句后面所有缩进的代码,否则将忽略他们。

5.3.2if-else语句

age=17
if age>=18:
    print("you are oil enough to vote")
    print("you are oil enough to vote123456")
else:
    print("sorry you can   ")
    print("sorry you can  please register ")

5.3.3if-elif-else

age=12
if age<4:
    print("your admission cost is 0$")
elif age<18:
    print("your admission cost is 5$")
else:
    print("your admission cost is 0$")

5.3.4使用多个elif代码块

age=12
if age<14:
    price=0
elif age<18:
    price=5
elif age<65:
    price=10
else:
    price=5
print("your admission cost is $"+str(price)+".")

六、字典

  • 字典就是能够存储互不相联的信息
alien_0={'color':'green','points':5}
print(alien_0['color'])
print(alien_0['points'])

6.2使用字典

  • 字典是一系列的 键------值对 组成的。我们可以通过键访问值,也可以通过值访问键。

6.2.1访问字典中的值

alien_0={'color':'green','points':5}
new_points=alien_0['points']
print("you just earned "+str(new_points)+"points!")

6.2.2添加键值对

  • 字典是一种动态结构,可以随时添加键值对。
alien_0={'color':'green','points':5}
print(alien_0)
alien_0['x_position']=0
alien_0['y_position']=25
print(alien_0)

6.2.3创建空字典

alien_0={}
alien_0['color']='green'
alien_0['points']=5
print(alien_0)

6.2.4修改字典中的值

alien_0={'color':'green'}
print("The alien is"+alien_0['color']+".")
alien_0['color']='yellow'
print("The alien is now"+alien_0['color']+".")
alien_0={'x_position':0,'y_position':25,'speed':'medium'}
print("Original x-position:"+str(alien_0['x_position']))
#向右移动外星人
#据外星人当前速度决定其移动多远
if alien_0['speed']=='slow':
    x_increment=1
elif alien_0['speed']=='medium':
    x_increment=2
else:
    #这个外星人的移动速度一定很快
    x_increment=3
#新位置等于老位置加上增量
alien_0['x_position']=alien_0['x_position']+x_increment
print("New x-position:"+str(alien_0['x_position']))

6.2.5删除键值对

alien_0={'color':'green','points':5}
print(alien_0)
del alien_0['points']
print(alien_0)

6.2.6由类似对象组成的字典

favorite_languagres={
    'jen':'python',
    'sarah':'C',
    'edward':'ruby',
    'phil':'python',
}
print("Saras facorite language is"+favorite_languagres['sarah'].title()+".")

6.3遍历字典

6.3.1遍历所有的键值对

  • items()方法可以返回字典里的键和值得元素
user_0={
    'username':'efermi',
    'first':'enrico',
    'last':'fermi',
}
for key,value in user_0.items():
    print("\nkey:"+key)
    print("value:"+value)

6.3.2遍历字典中的所有键

  • 在不需要使用字典中的值时,方法 key()很有用。遍历所有键值。
favorite_languages={
    'jen':'python',
    'sarah':'c',
    'edward':'ruby',
    'phil':'python',
}
for name in favorite_languages.keys():
    print(name.title())
favorite_languages={
    'jen':'python',
    'sarah':'c',
    'edward':'ruby',
    'phil':'python',
}
friends=['phil','sarah']
for name in favorite_languages.keys():
    print(name.title())
    if name in friends:
        print("Hi"+name.title()+",I see your favorite languages is"+favorite_languages[name].title()+"!")

6.3.3按顺序遍历字典中的所有键

favoirte_languages={
    'jen':'python',
    'sarah':'c',
    'edward':'ruby',
    'phil':'python',
}
for name in sorted(favoirte_languages.keys()):
    print(name.title()+",thank you for taking the poll")

6.3.4遍历字典中的所有值

favoirte_languages={
    'jen':'python',
    'sarah':'c',
    'edward':'ruby',
    'phil':'python',
}
print("The following languages have been menthioned:")
for language in favoirte_languages.values():
    print(language.title())

6.4嵌套

  • 将字典存储在列表中叫做 嵌套

6.4.1字典列表

#字典
alien_0={
    'color':'green',
    'points':5,
}
alien_1={
    'color':'red',
    'points':15,
}
alien_2={
    'color':'yellow',
    'points':25,
}
aliens=[alien_0,alien_1,alien_2]#列表
for alien in aliens:
    print(alien)

6.4.2在字典中存储列表

pizza={
    'crust':'thick',
    'toppings':['mushrooms','extra cheese'],
}
print("you ordered a "+pizza['crust']+"-crust pizza"+"with the following toppings:")
for topping in pizza['toppings']:
    print("\t"+topping)

6.4.3在字典中存储字典

users={
    'aeinstein':{
        'first':'albert',
        'last':'einstein',
        'location':'princetion',
    },
    'mucire':{
        'first':'marie',
        'last':'curie',
        'location':'princetion',
    },
}
for username,user_info in users.items():
    print("\nusername:"+username)
    full_name=user_info['first']+" "+user_info['last']
    location=user_info['location']
    print("\tFull name:"+full_name.title())
    print("\tLocation:"+location.title())

7、用户输入和while循环

7.1函数input

  • 这是一个输入函数
message=input("tell me something and I will repeat it back to you:")
print(message)

7.1.1编写清晰的程序

name=input("please enter your name:")
print("Hello"+name+"!")

7.1.2使用int()来获取数值输入

  • int()可以将字符串转换成数字
age=input("How old are you?")
age=int(age)
if age>18:
    print("\n you are tall enough to ride")
else:
    print("\n you .....")

7.1.3求模运算符

number=input("Enter a number ,and I will tell you if it is even or odd")
number=int(number)
if number%2==0:
    print("\nThe number"+str(number)+"is even")
else:
    print("\nThe number "+str(number)+"is odd")

7.2while循环简介

7.2.1使用while循环

current_number=1
while current_number<=5:
    print(current_number)
    current_number+=1;

7.2.2让用户选择何时退出

  • 可以使用while循环让程序在用户愿意时不断运行。我们在其中定义一个退出值,只要用户输入的不是这个值,程序接着运行。
prompt="\n Tell me something and i will repeat it back to you:"
prompt+="\n Enter 'quit' to end the program"
message=""
while message !='quit':
    message=input(prompt)
    print(message)

7.2.3使用标志

  • 使用标志有点类似与旗帜变量。赋予它一个状态,当状态发生改变时,循环结束。
prompt="\n Tell me something and i will repeat it back to you:"
prompt+="\n Enter 'quit' to end the program"
active=True
while active:
    message=input(prompt)
    if message=='quit':
        active=False
    else:
        print(message)

7.2.4适应break退出循环

  • 要退出while循环,不在执行接下来的代码,直接使用 break
prompt="\n Tell me something and i will repeat it back to you:"
prompt+="\n Enter 'quit' to end the program"
while True:
    city=input(prompt)
    if city=='quit':
        break
    else:
        print("I love to go to "+city.title()+"!")

7.3使用while循环来处理列表和字典

7.3.1在列表之间移动元素

#首先创建一个带验证的用户列表
#和一个用于存储已经验证的用户列表
unconfirmed_users=['alice','brain','candace']
confirmed_users=[]
#验证每个用户,直到没有未验证的用户为止
#将每个经过验证的列表都移动到已经验证后的用户列表中
while unconfirmed_users:
    current_user=unconfirmed_users.pop()
    print("Verfing user:"+current_user.title())
    confirmed_users.append(current_user)
    #显示所有已经验证的用户
print("\nThe following users have beeen confimede:")
for confirmed_user in confirmed_users:
    print(confirmed_user.title())

7.3.2删除包含特定值的所有列表

pets=['dog','cat','dog','goldfish','cat','rabbit','cat']
print(pets)
while 'cat' in pets:
    pets.remove('cat')
print(pets)

7.3使用while循环来处理列表和字典

7.3.1在列表之间移动元素

#首先创建一个带验证的用户列表
#和一个用于存储已经验证的用户列表
unconfirmed_users=['alice','brain','candace']
confirmed_users=[]
#验证每个用户,直到没有未验证的用户为止
#将每个经过验证的列表都移动到已经验证后的用户列表中
while unconfirmed_users:
    current_user=unconfirmed_users.pop()
    print("Verfing user:"+current_user.title())
    confirmed_users.append(current_user)
    #显示所有已经验证的用户
print("\nThe following users have beeen confimede:")
for confirmed_user in confirmed_users:
    print(confirmed_user.title())

7.3.2删除包含特定值的所有列表

pets=['dog','cat','dog','goldfish','cat','rabbit','cat']
print(pets)
while 'cat' in pets:
    pets.remove('cat')
print(pets)


目录
相关文章
|
3月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
301 102
|
3月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
322 104
|
3月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
266 103
|
3月前
|
机器学习/深度学习 人工智能 数据挖掘
Python:现代编程的首选语言
Python:现代编程的首选语言
197 82
|
2月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
184 3
|
2月前
|
数据处理 Python
Python编程:类型转换与输入输出
本教程介绍Python中输入输出与类型转换的基础知识,涵盖input()和print()的使用,int()、float()等类型转换方法,并通过综合示例演示数据处理、错误处理及格式化输出,助你掌握核心编程技能。
453 3
|
2月前
|
并行计算 安全 计算机视觉
Python多进程编程:用multiprocessing突破GIL限制
Python中GIL限制多线程性能,尤其在CPU密集型任务中。`multiprocessing`模块通过创建独立进程,绕过GIL,实现真正的并行计算。它支持进程池、队列、管道、共享内存和同步机制,适用于科学计算、图像处理等场景。相比多线程,多进程更适合利用多核优势,虽有较高内存开销,但能显著提升性能。合理使用进程池与通信机制,可最大化效率。
276 3
|
2月前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
274 0
|
3月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的多面手
Python:现代编程的多面手
85 0
|
3月前
|
存储 人工智能 算法
Python实现简易成语接龙小游戏:从零开始的趣味编程实践
本项目将中国传统文化与编程思维相结合,通过Python实现成语接龙游戏,涵盖数据结构、算法设计与简单AI逻辑,帮助学习者在趣味实践中掌握编程技能。
349 0

推荐镜像

更多