88个python的基本语法知识【一】

本文提供了Python编程语言的基础知识点概览,覆盖了从基础的变量赋值、数据类型、注释,到更高级的概念如类定义、继承、异常处理等。以下是文章的摘要:

  • 基础语法:介绍了变量赋值、数据类型(整数、浮点数、字符串、布尔值)、注释方法。
  • 运算符:包括算术运算符、比较运算符、逻辑运算符的使用。
  • 控制流:涉及条件语句(if-elif-else)和循环(for、while)。
  • 数据结构:包括列表、元组、字典、集合的使用及其操作方法。
  • 字符串操作:包括字符串格式化、大小写转换、分割、替换等。
  • 函数:包括函数定义、默认参数、关键字参数、可变参数、lambda表达式。
  • 迭代与生成器:介绍了列表解析、生成器表达式、迭代器协议。
  • 面向对象编程:涉及类的定义、继承、魔法方法、属性装饰器。
  • 高级特性:包括装饰器、上下文管理器、类型注解、枚举类型。
  • 文件操作:文件的读取与写入。
  • 异常处理:try-except-finally的使用。
  • 模块与包:模块的导入和使用,包的概念。
  • 系统交互:使用os和sys模块与操作系统交互。
  • 正则表达式:使用re模块处理文本匹配。
  • 数据处理:JSON解析、日期时间处理、随机数生成、数学运算。
  1. 变量和赋值:

    x = 5
    name = "John"
    
  2. 数据类型:

    • 整数(int)
    • 浮点数(float)
    • 字符串(str)
    • 布尔值(bool)
  3. 注释:

    # 这是单行注释
    """
    这是
    多行注释
    """
    
  4. 算术运算:

    a + b  # 加法
    a - b  # 减法
    a * b  # 乘法
    a / b  # 除法
    a % b  # 取余
    a ** b  # 幂运算
    
  5. 比较运算:

    a == b  # 等于
    a != b  # 不等于
    a > b   # 大于
    a < b   # 小于
    a >= b  # 大于等于
    a <= b  # 小于等于
    
  6. 逻辑运算:

    a and b
    a or b
    not a
    
  7. 条件语句:

    if condition:# do something
    elif another_condition:# do something else
    else:# do something different
    
  8. 循环:

    for i in range(5):print(i)while condition:# do something
    
  9. 列表:

    my_list = [1, 2, 3]
    my_list.append(4)
    my_list[0]  # 访问元素
    
  10. 元组:

    my_tuple = (1, 2, 3)
    
  11. 字典:

    my_dict = {"name": "John", "age": 30}
    my_dict["name"]  # 访问键值
    
  12. 集合:

    my_set = {1, 2, 3}
    my_set.add(4)
    
  13. 字符串操作:

    s = "hello"
    s.upper()
    s.lower()
    s.split(" ")
    s.replace("h", "j")
    
  14. 字符串格式化:

    name = "John"
    age = 30
    f"Hello, {name}. You are {age}."
    
  15. 列表解析:

    squares = [x**2 for x in range(10)]
    
  16. 函数定义:

    def my_function(param1, param2):return param1 + param2
    
  17. 默认参数:

    def my_function(param1, param2=5):return param1 + param2
    
  18. 关键字参数:

    def my_function(param1, param2):return param1 + param2
    my_function(param2=10, param1=5)
    
  19. 可变参数:

    def my_function(*args):for arg in args:print(arg)my_function(1, 2, 3)
    
  20. 关键字可变参数:

    def my_function(**kwargs):for key, value in kwargs.items():print(f"{key}: {value}")my_function(name="John", age=30)
    
  21. lambda表达式:

    f = lambda x: x**2
    f(5)
    
  22. map函数:

    list(map(lambda x: x**2, range(10)))
    
  23. filter函数:

    list(filter(lambda x: x % 2 == 0, range(10)))
    
  24. reduce函数:

    from functools import reduce
    reduce(lambda x, y: x + y, range(10))
    
  25. 异常处理:

    try:# do something
    except Exception as e:print(e)
    finally:# cleanup
    
  26. 文件读取:

    with open("file.txt", "r") as file:content = file.read()
    
  27. 文件写入:

    with open("file.txt", "w") as file:file.write("Hello, World!")
    
  28. 类定义:

    class MyClass:def __init__(self, param1):self.param1 = param1def my_method(self):return self.param1
    
  29. 类继承:

    class MyBaseClass:def __init__(self, param1):self.param1 = param1class MyDerivedClass(MyBaseClass):def __init__(self, param1, param2):super().__init__(param1)self.param2 = param2
    
  30. 魔法方法:

    class MyClass:def __init__(self, param1):self.param1 = param1def __str__(self):return f"MyClass with param1={self.param1}"
    
  31. 属性和装饰器:

    class MyClass:def __init__(self, value):self._value = value@propertydef value(self):return self._value@value.setterdef value(self, new_value):self._value = new_value
    
  32. 生成器:

    def my_generator():yield 1yield 2yield 3for value in my_generator():print(value)
    
  33. 列表解析和生成器表达式:

    [x**2 for x in range(10)]
    (x**2 for x in range(10))
    
  34. 集合解析:

    {x**2 for x in range(10)}
    
  35. 字典解析:

    {x: x**2 for x in range(10)}
    
  36. 上下文管理器:

    with open("file.txt", "r") as file:content = file.read()
    
  37. 装饰器:

    def my_decorator(func):def wrapper(*args, **kwargs):print("Before function call")result = func(*args, **kwargs)print("After function call")return resultreturn wrapper@my_decorator
    def my_function():print("Function call")my_function()
    
  38. 类型注解:

    def my_function(param1: int, param2: str) -> str:return param2 * param1
    
  39. 枚举:

    from enum import Enumclass Color(Enum):RED = 1GREEN = 2BLUE = 3
    
  40. 迭代器:

    class MyIterator:def __init__(self, start, end):self.current = startself.end = enddef __iter__(self):return selfdef __next__(self):if self.current >= self.end:raise StopIterationelse:self.current += 1return self.current - 1
    
  41. JSON解析:

    import jsonjson_str = '{"name": "John", "age": 30}'
    data = json.loads(json_str)
    
  42. 日期和时间:

    from datetime import datetime
    now = datetime.now()
    
  43. 随机数生成:

    import randomrandom_number = random.randint(1, 10)
    
  44. 数学运算:

    import mathmath.sqrt(16)
    
  45. 模块和包:

    # my_module.py
    def my_function():return "Hello"# main.py
    import my_module
    my_module.my_function()
    
  46. 命名空间:

    global_var = 5def my_function():local_var = 10global global_varglobal

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3269102.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

C#基础——类、构造函数和静态成员

类 类是一个数据类型的蓝图。构成类的方法和变量称为类的成员&#xff0c;对象是类的实例。类的定义规定了类的对象由什么组成及在这个对象上可执行什么操作。 class 类名 { (访问属性) 成员变量; (访问属性) 成员函数; } 访问属性&#xff1a;public&#xff08;公有的&…

ubuntu22.04 安装 NVIDIA 驱动以及CUDA

目录 1、事前问题解决 2、安装 nvidia 驱动 3、卸载 nvidia 驱动方法 4、安装 CUDA 5、安装 Anaconda 6、安装 PyTorch 1、事前问题解决 在安装完ubuntu之后&#xff0c;如果进入ubuntu出现黑屏情况&#xff0c;一般就是nvidia驱动与linux自带的不兼容&#xff0c;可以通…

[ECharts] There is a chart instance already initialized on the dom. 已存在图表,渲染重复

报错&#xff1a;已存在图表&#xff0c;渲染重复 解决: 在合适的时机执行 dispose 方法即可 // echarts 全局存入 实例 let myChart: any;// 在你的 initChart 初始化 Echarts 方法中 先执行清理方法 const initChart () > {// 执行清理方法然后初始化if(myChart){cons…

MATLAB怎么实现多条曲线共用一个图例

y1 sin(x); y2 3*sin(x); y3 cos(x); y4 3*cos(x); 例子&#xff1a;如果我们有4条曲线&#xff0c;分布是cos类和sin类&#xff0c;我们的图例就想区分是cos类还是sin类。 第一步&#xff08;关键步骤&#xff09; 我们要把我们所需要的类别曲线先画一遍&#xff0c; …

揭秘Django与Neo4j:构建智能知识图谱的终极指南

揭秘Django与Neo4j:构建智能知识图谱的终极指南 前言 图是一种用于对象之间的成对关系进行建模的数学结构。 它由两个主要元素组成:节点和关系。 节点:节点可以看作是传统数据库中的记录。每个节点代表一个对象或实体,例如一个人或一个地方。节点按标签分类,这有助于根…

【SpringBoot】1 Gitee

本项目 Gitee 地址&#xff1a;https://gitee.com/Lin_DH/system idea中可能装个gitee的插件&#xff0c;这样操作起来比较方便。 1&#xff09;登录 Gitee 官网&#xff08;https://gitee.com/&#xff09;&#xff0c;新建仓库。 2&#xff09;复制新建的 Gitee 仓库地址&am…

Intellij IDEA多模块分组 实现move to group

新版本idea&#xff0c;没有了move to group的功能&#xff0c;导致模块很多的时候不能分组。2018版本有。 这个分组是虚拟的&#xff0c;不会在磁盘中实际存在。 要实现这个功能&#xff0c;只需要改modules.xml即可。 步骤 1. 找到配置文件 .idea目录下的moudules.xml 2.…

2024年钉钉杯大数据竞赛A题超详细解题思路+python代码手把手保姆级运行讲解视频+问题一代码分享

初赛A&#xff1a;烟草营销案例数据分析 AB题综合难度不大&#xff0c;难度可以视作0.4个国赛&#xff0c;题量可以看作0.35个国赛题量。适合于国赛前队伍练手&#xff0c;队伍内磨合。竞赛获奖率50%&#xff0c;八月底出成绩&#xff0c;参赛人数3000队左右。本文将为大家进行…

古训如金,指引前行(感受古人的智慧与洞见)

文章目录 古语佳句我与我周旋久,宁作我。花看半开,酒饮微醉,毋意,毋必,毋固,毋我。居逆境中,周身皆针砭药石,好而知其恶,恶而知其美。天下皆知取之为取,而莫知与之为取。喜时之言多失信,怒时之言多失体。仁者如射,射者正己而后发。私视使目盲,达人撒手悬崖,俗子沉…

【React】useEffect 钩子详解

文章目录 一、useEffect 概念二、useEffect 的基本用法1. 无依赖项2. 空依赖项数组3. 带依赖项的 useEffect 三、useEffect 的常见应用场景1. 数据获取2. 订阅与清除3. 动画与定时器 四、useEffect 的进阶用法1. 多个 useEffect2. 条件执行副作用 五、注意事项 useEffect 是 Re…

微信公众号获取用户openid(PHP版,snsapi_base模式)

微信公众号获取用户openid的接口有2个&#xff1a;snsapi_base、snsapi_userinfo 详情见微信公众号开发文档&#xff1a;https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html 本文介绍用PHP方式调用snsapi_base接口获取微信用户…

Tomcat中的WebSocket是如何实现的?

Tomcat中的WebSocket是如何实现的&#xff1f; WebSocket是一种在客户端和服务器之间提供长期、双向、实时通信的协议 全双工通信&#xff1a;WebSocket允许数据同时在客户端和服务器双向通信&#xff0c;无需像HTTP等待请求和响应的循环 单个TCP连接&#xff1a;建立一次连…

Golang | Leetcode Golang题解之第287题寻找重复数

题目&#xff1a; 题解&#xff1a; func findDuplicate(nums []int) int {slow, fast : 0, 0for slow, fast nums[slow], nums[nums[fast]]; slow ! fast; slow, fast nums[slow], nums[nums[fast]] { }slow 0for slow ! fast {slow nums[slow]fast nums[fast]}return s…

【漏洞复现】Jenkins CLI 接口任意文件读取漏洞(CVE-2024-23897)

漏洞简介 Jenkins是一款基于JAVA开发的开源自动化服务器。 Jenkins使用args4j来解析命令行输入&#xff0c;并支持通过HTTP、WebSocket等协议远程传入命令行参数。在args4j中&#xff0c;用户可以通过字符来加载任意文件&#xff0c;这导致攻击者可以通过该特性来读取服务器上…

物联网主机 E6000:智慧应急领域的创新力量

在当今瞬息万变的世界中&#xff0c;突发事件和紧急情况时有发生。如何迅速、准确地应对这些挑战&#xff0c;保障人民生命财产安全&#xff0c;成为了社会发展的重要课题。而物联网主机 E6000 的出现&#xff0c;为智慧应急领域带来了全新的解决方案。 一、强大的性能与功能 物…

好用的缺陷(BUG)跟踪管理系统有哪些?

以下是一些常用的缺陷&#xff08;BUG&#xff09;跟踪管理系统&#xff0c;并对它们进行详细列出和比较&#xff0c;同时讨论哪些系统与LabVIEW兼容或常用于LabVIEW项目中。 1. Jira 功能 强大的问题跟踪和项目管理功能。丰富的自定义选项和插件支持。适用于敏捷开发的看板和…

第七章:贝叶斯分类器

目录 7.1 贝叶斯决策论 7.2 极大似然估计 7.3 朴素贝叶斯分类器 7.4 半朴素贝叶斯分类器 7.5 贝叶斯网 7.5.1 结构 7.5.2 学习 7.5.3 推断 7.6 EM算法 7.1 贝叶斯决策论 概率框架下实施决策的基本理论 给定N个类别&#xff0c;令代表将第j类样本误分类为第i类所产生的…

BFS实现迷宫最短路径

结合队列的知识利用 广度优先遍历&#xff0c;通过对能走的路径的记录以及对走过路径的标记&#xff0c;进行多条路搜查 一、理论基础 如下图的迷宫&#xff1a; 选取所走方向&#xff08;针对某一个位置&#xff09;下&#xff0c;右&#xff0c;上&#xff0c;左&#xff0…

如何进行小程序的调试

Errno错误码 在使用部分小程序 API / 组件时&#xff0c;抛出的异常&#xff08;fail 回调 / Promise reject&#xff09;Error 对象中除了带有 errMsg&#xff0c;还会带有通用错误码 errno。 代码示例 wx.openBluetoothAdapter({success (res) {console.log(res)}fail (er…

测试工作中常听到的名词解释 : )

背景 很多名称其实看字面意思都挺抽象的&#xff0c;有时看群里的测试大佬在不停蹦这类术语&#xff0c;感觉很高大上&#xff0c;但其实很多你应该是知道的&#xff0c;只不过没想到别人是这样叫它的。又或者你的主编程语言不是 Java&#xff0c;所以看不懂他们在讲啥&#x…