Python | 试卷刷题and基础笔记

2024-06-04 04:28

本文主要是介绍Python | 试卷刷题and基础笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.下列转义字符中, 属于“回车”含义的是

\n 换行 
\r 回车

2.for循环遍历字典

在Python中,你可以使用for循环来遍历字典的键(keys)、值(values)或者键-值对(items)。下面是三种遍历字典的方法:

遍历字典的键(keys)

my_dict = {'a': 1, 'b': 2, 'c': 3}  
for key in my_dict:  print(key)

遍历字典的值(values)

my_dict = {'a': 1, 'b': 2, 'c': 3} for value in my_dict.values(): print(value)

遍历字典的键-值对(items)

my_dict = {'a': 1, 'b': 2, 'c': 3}  
for key, value in my_dict.items():  print(key, value)

3.切片操作

c1="HelloWorld"
print(c1[:5])#指的是从[0,5)
print(c1[5:])#指的是 从[5,end]
print(c1[::5])  #指的是步长是5

 4.True==1

print(2==True and 0==False)

结果是False 因为2不等于1

5.

print(4>5 and 4 or 5 and 4*3**2 or not 8>6)

在Python中,逻辑运算符(如andor)的优先级低于比较运算符(如>),但是它们仍然遵循一定的规则进行求值。同时,Python使用“短路”行为,即当确定整个逻辑表达式的结果时,它会停止进一步的求值。

让我们逐步分析表达式 4 > 5 and 4 or 5 and 4 * 3 ** 2 or not 8 > 6

  1. 括号和优先级:首先,由于我们没有显式的括号,我们需要知道运算符的优先级。在Python中,not的优先级最高,然后是and,最后是or。此外,乘方(**)的优先级高于乘法和除法,再高于比较运算符,最后才是逻辑运算符。
  2. 从左到右求值:在没有括号的情况下,Python从左到右进行求值。

现在,让我们逐步分析这个表达式:

  1. 4 > 5:这是False,因为4不大于5。
  2. 由于and是短路运算符,如果其左侧为False,则整个and表达式的结果就是False,并且不会求值其右侧的部分。因此,4 > 5 and 4的结果是False
  3. 接下来是or运算符。由于or的左侧(即4 > 5 and 4的结果)是Falseor运算符会求值其右侧的部分来确定整个表达式的结果。
  4. 5 and 4 * 3 ** 2:首先,我们求值4 * 3 ** 2,得到36(因为乘方的优先级高于乘法)。然后,由于5是真值(在布尔上下文中等于True),and运算符会求值其右侧的部分,即36。因此,5 and 4 * 3 ** 2的结果是36。
  5. 由于or运算符的左侧(即4 > 5 and 4的结果)是False,而右侧(即5 and 4 * 3 ** 2的结果)是36(在布尔上下文中也是真值),因此整个or表达式的结果是36。
  6. 最后,not 8 > 6:这部分是not True,因为8确实大于6,所以结果是False。但是,由于我们已经确定了整个表达式的结果是36(在前面的or运算中),所以这部分的值不会影响最终的结果。

综上所述,print(4 > 5 and 4 or 5 and 4 * 3 ** 2 or not 8 > 6)的结果是36。

6.

extend()函数和'+='运算符

list.extend(iterable)

(1)添加列表

demo_list = [1,2,3]
demo_list.extend([4,5])    # 等效写法demo_list += [4,5]   
#list结果为 [1, 2, 3, 4, 5]


(2)添加字符串

demo_list = [1,2,3]
demo_list.extend("ab")
#list结果为 [1, 2, 3, 'a', 'b']


(3)添加字典

demo_list = [1,2,3]
demo_list.extend({"apple":1,"banana":2})
#list结果 [1, 2, 3, 'apple', 'banana']

list.pop(index) 

这里是索引,删除第几个 

pop的用法

list.remove(element)

这里是删除值 

remove的用法

 7.冒泡排序

# 使用 Python 冒泡排序算法对[23,56,34,12,78,6]进行由大到小
# 排序a=[23,56,34,12,78,6]
end=len(a)while end!=0:flag = 0for i in range(0,end-1):if a[i+1]<a[i]:temp=a[i+1]a[i+1]=a[i]a[i]=tempflag=1if flag==0:breakend=end-1print(a)

8.类的属性

1. obj.__dict__

__dict__ 是一个存储对象属性的字典。对于自定义对象,__dict__ 会包含所有实例变量(不包括继承自类的属性,除非它们被重写)。

class MyClass: 
def __init__(self): 
self.a = 1 
self.b = 2 obj = MyClass() 
print(obj.__dict__) # 输出: {'a': 1, 'b': 2}

2. obj.__class__

__class__ 属性引用对象所属的类。

class MyClass: pass obj = MyClass() print(obj.__class__) # 输出: <class '__main__.MyClass'>

3. class.__bases__

__bases__ 是一个元组,包含了类继承的所有父类。对于单一继承,这个元组只包含一个类;对于多重继承,它会包含多个类。

class Base1: 
pass class Base2: 
pass class MyClass(Base1, Base2): 
pass print(MyClass.__bases__) # 输出: (<class '__main__.Base1'>, <class '__main__.Base2'>)

4. class.__base__

注意:__base__ 属性并不是Python官方支持的。但在单继承的情况下,它通常指向类的直接父类(与 __bases__[0] 相同)。在多继承的情况下,使用 __base__ 可能会导致混淆,因为它可能不指向你期望的父类。因此,通常建议使用 __bases__

但是,为了示例,这里是如何在单继承的情况下使用 __base__ 的:

class Base: 
pass class MyClass(Base): 
pass print(MyClass.__base__) # 输出: <class '__main__.Base'>

5. class.__mro__

类的层次结构

 
class Base1: def method(self): return "Base1" class Base2: def method(self): return "Base2" class MyClass(Base1, Base2): pass print(MyClass.__mro__) # 输出类似: (<class '__main__.MyClass'>, <class '__main__.Base1'>, <class '__main__.Base2'>, <class 'object'>) # 当我们调用 MyClass().method() 时,Python 会首先查找 MyClass 是否定义了 method,如果没有,它会查找 Base1,然后是 Base2,最后是 object(所有类的基类)

9.深拷贝 v.s 浅拷贝

Python 中以 copy.deepcopy() 来实现对象的深度拷贝

深浅拷贝

这篇关于Python | 试卷刷题and基础笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1029061

相关文章

使用Python和OpenCV库实现实时颜色识别系统

《使用Python和OpenCV库实现实时颜色识别系统》:本文主要介绍使用Python和OpenCV库实现的实时颜色识别系统,这个系统能够通过摄像头捕捉视频流,并在视频中指定区域内识别主要颜色(红... 目录一、引言二、系统概述三、代码解析1. 导入库2. 颜色识别函数3. 主程序循环四、HSV色彩空间详解

一文深入详解Python的secrets模块

《一文深入详解Python的secrets模块》在构建涉及用户身份认证、权限管理、加密通信等系统时,开发者最不能忽视的一个问题就是“安全性”,Python在3.6版本中引入了专门面向安全用途的secr... 目录引言一、背景与动机:为什么需要 secrets 模块?二、secrets 模块的核心功能1. 基

python常见环境管理工具超全解析

《python常见环境管理工具超全解析》在Python开发中,管理多个项目及其依赖项通常是一个挑战,下面:本文主要介绍python常见环境管理工具的相关资料,文中通过代码介绍的非常详细,需要的朋友... 目录1. conda2. pip3. uvuv 工具自动创建和管理环境的特点4. setup.py5.

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Python并行处理实战之如何使用ProcessPoolExecutor加速计算

《Python并行处理实战之如何使用ProcessPoolExecutor加速计算》Python提供了多种并行处理的方式,其中concurrent.futures模块的ProcessPoolExecu... 目录简介完整代码示例代码解释1. 导入必要的模块2. 定义处理函数3. 主函数4. 生成数字列表5.

Python中help()和dir()函数的使用

《Python中help()和dir()函数的使用》我们经常需要查看某个对象(如模块、类、函数等)的属性和方法,Python提供了两个内置函数help()和dir(),它们可以帮助我们快速了解代... 目录1. 引言2. help() 函数2.1 作用2.2 使用方法2.3 示例(1) 查看内置函数的帮助(

Python虚拟环境与Conda使用指南分享

《Python虚拟环境与Conda使用指南分享》:本文主要介绍Python虚拟环境与Conda使用指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python 虚拟环境概述1.1 什么是虚拟环境1.2 为什么需要虚拟环境二、Python 内置的虚拟环境工具

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

Python pip下载包及所有依赖到指定文件夹的步骤说明

《Pythonpip下载包及所有依赖到指定文件夹的步骤说明》为了方便开发和部署,我们常常需要将Python项目所依赖的第三方包导出到本地文件夹中,:本文主要介绍Pythonpip下载包及所有依... 目录步骤说明命令格式示例参数说明离线安装方法注意事项总结要使用pip下载包及其所有依赖到指定文件夹,请按照以