首页 > 编程语言 >聪明学python【4】+【001】

聪明学python【4】+【001】

时间:2023-11-28 20:46:21浏览次数:34  
标签:语句 case 推导 python 聪明 else 空格 001 列表

【4】条件 + 【001】代码风格

if 语句

关于选择的语句,具体不必阐述,和C语言大差不差,关于几点区别会在下方列出

  1. 关于所有选择:

    • if

    • if-else

      • if-else 推导式

        1. 推导式(Comprehensions)是Python中一种简洁强大的语法,用于创建新的序列(如列表、集合、字典)的一种方法。Python中有三种主要的推导式:列表推导式集合推导式字典推导式

          1.列表推导式(List Comprehensions):
          列表推导式提供了一种创建新列表的紧凑语法。其基本形式如下:

          new_list = [expression for item in iterable if condition]

          2.expression:用于生成新列表元素的表达式。
          3.item:迭代的元素。
          4.iterable:可迭代对象,例如列表、元组、字符串等。
          5.condition(可选):一个过滤条件,仅当条件为真时才包含元素。
          示例:

          生成一个包含1到10的平方的列表
             squares = [x**2 for x in range(1, 11)]
          

          推导式使得代码更为紧凑和可读,但要注意不要滥用,以免降低代码的可读性。

          例如:

        2. def abs7(n):
              return n if (n >= 0) else -n
          

          就是把if-else的成分做一个式子的一部分。

          注意:if-else推导式在简单的条件逻辑中很有用,但要注意,如果条件逻辑过于复杂,可能会使代码难以阅读。在这种情况下,最好使用常规的if语句块。

      • img

    • if-elif-else

      • 用法和C语言的else if 类似
    • match …… case

      • 类似于C中switch case

      • 不同的是每个case后不需要有break,只会执行一个case

      • case _: 类似于 C 和 Java 中的 default:,当其他 case 都无法匹配时,匹配这条,保证永远会匹配成功。

      • 一个 case 也可以设置多个匹配条件,条件使用 隔开,例如:

        ...
            case 401|403|404:
                return "Not allowed"
        
  2. 关于所有选择的格式:

    • 嵌套

    • 并列

    • 函数封装

      • #例如
        def abs5(n):
            if n >= 0:
                return n
            else:
                return -n
        
  3. 格式与C语言的不同之处

    • if后面要跟冒号 ‘:’
    • 严格缩进(不缩进则视为选择部分结束)

【001】代码风格

  1. 缩进

    • 如果有开始定界符,其余行的缩进需与开始定界符对齐。
    • 需要额外的4个空格(长度等于一个Tab键),以区分开传入参数,和其他内容。
    • 空格一般用于添加以上这种缩进,Tab键一般用于保持行与行之间的一致性
    • 多行if语句衔接,需要一个额外的缩进,以区分其他内容 ?
  2. 换行

    • 将所有行限制为最多 79 个字符

    • 一般语句接受“隐式”延续,但是with语句等不支持,需要使用反斜杠 ** 来衔接。

    • 另一个这样的例子是assert语句。

    • 多行if语句的缩进?

    • 通常不鼓励使用复合语句(同一行上的多个语句)

  3. 关于空格

    • 紧接在圆括号、方括号或大括号内,不需要多余空格;
    • 逗号、分号或冒号之前,尾随逗号之后均不需要多余空格;
    • 切片中,两个冒号必须应用相同的间距;
    • 紧接在开始函数调用的参数列表的左括号之前,不需要多余空格;
    • 赋值(或其他)运算符周围需要多个空格以使其与另一个运算符对齐
  4. 代码注释

    • 注释就是对代码的解释和说明,其目的是让人们能够更加轻松地了解代码。 注释是编写程序时,写程序的人给一个语句、程序段、函数等的解释或提示,能提 高程序代码的可读性。

    • 在有处理逻辑的代码中,源程序有效注释量必须在20%以上。

    • 我的约定
      • 在代码最前端---多行注释:创建时间、功能(任务描述)、其他
      • 函数开始的前一行,用 # 描述功能和返回值的介绍(必要的话)
  5. 命名规则

    • 变量名不能包含空格,但可使用下划线来分隔其中的单词。 例如,变量名greeting_message 可行,但变量名greeting message会引发错误。
  6. 命名规范

    • 不要将Python关键字和函数名用作变量名,即不要 使用Python保留用于特殊用途的单词,如print
    • 变量名与函数名应既简短又具有描述性。例如, namen好, student_names_n好。

标签:语句,case,推导,python,聪明,else,空格,001,列表
From: https://www.cnblogs.com/y-cw/p/17863013.html

相关文章

  • python基础之数据类型
    数据类型(重要)什么是数据类型? 视频文件音频文件表格文件图片等等这些都是保存数据的方式#在IT领域也有各种各样的保存数据的方式数据类型的种类?-数字类型-整数类型(int)-浮点类型(float)-字符串类型(str)-列表类型(list)-字典类型(dict)-布尔类型(......
  • python基础之变量与常量
    注释语法#学语言先学注释,注释是代码之母!1.什么是注释? 注释就是对一段代码的解释,它不参与代码的实际运行,起到提示作用.2.如何使用注释? 方式一: 警号#单行注释""" 还可以借助于快捷键 code reformatcode ctrl+......
  • python基础之用户交互
    程序与用户交互概念:用户交互就是人往计算机中input/输入数据,计算机print/输出结果############输入a=input('请输入您的密码:')#'1'1"""只要是input,接收的数据类型全部都是str类型的,不管你输入的类型是什么类型的"""#如果以后你需要做运算,需要转类型#print(usernam......
  • 【python入门之程序与用户交互】---程序与用户交互
    【一】什么是与用户交互交互的本质就是输入、输出用户交互就是人往计算机中input/输入数据,计算机print/输出结果【二】为什么要与用户交互为了让计算机能够像人一样与用户沟通交流过去我们去银行取钱,用户需要把帐号密码告诉柜员而现在,柜员被ATM机取代ATM机就是一台......
  • 【python入门之基本数据类型的学习】---基本数据类型(list、str)【二】
    【三】字符串类型(str)【1】作用字符串类型(str)用于表示文本信息,是一种非常重要的数据类型,用于处理文字、字符等信息【2】定义(1)定义方式字符串可以使用单引号、双引号或三引号进行定义#定义方式1:name_1='Jack'#(当左边有赋值符号和遍历名的时候,它就是字符串)#定......
  • 【python入门之基本数据类型】---基本数据类型(字典、布尔)【三】
    【五】字典类型(dict)【1】作用如果我们需要用一个变量记录多个值,但多个值是不同属性的比如人的姓名、年龄、身高,用列表可以存,但列表是用索引对应值的,而索引不能明确地表示值的含义这就用到字典类型,字典类型是用key:value形式来存储数据其中key可以对value有描述性的功能......
  • 【python入门之基本数据类型】---基本数据类型(元组、集合)【四】
    【七】元组类型(tuple)【1】作用元组(tuple)是一种不可变的序列类型,类似于列表,用于存储多个有序元素。元组与列表的主要区别在于元组的元素不能被修改、删除或添加,是不可变的数据类型。元组通常用于存储相关联的数据,保持数据的完整性。【2】定义元组通过小括号()......
  • 【Python爬虫】第11篇:Mongodb数据库进阶使用。从0到scrapy高手笔记(附代码,可自取)
    本文主要学习一下关于爬虫的相关前置知识和一些理论性的知识,通过本文我们能够知道什么是爬虫,都有那些分类,爬虫能干什么等,同时还会站在爬虫的角度复习一下http协议。全套笔记和代码自取地址:请移步这里感兴趣的小伙伴可以自取哦,欢迎大家点赞转发~共8章,37子模块Mongodb数......
  • 【Python进阶】第7篇:TCP和socket客户端程序开发。总结md文档集合(已分享,附代码)
    本文从14大模块展示了python高级用的应用。分别有Linux命令,多任务编程、网络编程、Http协议和静态Web编程、html+css、JavaScript、jQuery、MySql数据库的各种用法、python的闭包和装饰器、mini-web框架、正则表达式等相关文章的详细讲述。全套笔记和代码自取地址:请移步这里感......
  • 聪明办法学python第3次笔记
    条件ifelse语句if条件:执行行为else:执行行为elif语句:等同与c语言中的elsei语句ifx>10:print()elifx=10:print(2)else:print(3)ifelse推导式print(nif(n>0)else-n)match-case语句:等同于c语言中的switch-casem=map(int(),input())match......