• 【python】二:基础学习-组织架构函数等


    python的代码块是通过缩进区分的,没有花括号;

    每一个python文件开头都要有模块注释,对模块说明

    补充

    • pass:空语句/站位语句

    方法

    • 接收输入:input(),在终端接收

    注释

    • 单行注释: #
    # 这是注释
    
    • 1
    • 多行注释:
    '''
    这是注释
    这是注释
    这是注释
    '''
    
    • 1
    • 2
    • 3
    • 4
    • 5

    流程控制、循环控制

    • if … else …:、if … elif … else…

      mobile = '13277777777'
      password = '123456'
      
      print('请输入手机号')
      user_mobile = input()
      print('请输入密码')
      user_password = input()
      if user_mobile == mobile and user_password == password:
          print('welcome !')
      else:
          print('error')
      
      
      
        # python中的三元表达式:
        '满足条件的处理' if lists else '不满足条件的处理'
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
    • while … else …

      while 条件:
      	#代码块
      else#当while块结束后执行else
      	#代码
      
      • 1
      • 2
      • 3
      • 4
    • for in

      a = [1,2,3]
      for item in a:
      	print(item)
      else: # 可以加个else,同while,不加也一样的,如果for里面break非正常结束是不会执行同级else的,
          print('over')
          
      #用for in 仿其他编程里面的for(i=0;i<10;i++){}
      # range(起始,长度,步长)
      for num in range(0,10):
          print(num)
      # 打印0至9
      for num in range(0, 10, 2):
          print(num)
      # 打印0,2,4,6,8
      
      a = [1, 2, 3, 4, 5, 6, 7, 8]
      for i in range(0, len(a), 2):
          print(a[i], end='|')  # end:以行的形式打印出来,并且分隔是 |
      # 1 | 3 | 5 | 7 |
      b = a[0: len(a): 2]
      print(b)
      # [1,3,5,7]
      
      
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22
      • 23
      • 24
      • 25

    组织架构

    • 包-模块-类[含函数/变量] : 包即文件夹,模块即文件名

    • 模块引入

     import 模块
     import 包.模块
     import 包.模块 as 替代名
     包.模块.变量 = 替代名.变量
     
     from 包.模块 import 变量1,变量2...(若需换行,在上一行最后添加 `\`或者将所有变量用括号包起来)
     from 包 import 模块
     
     全导入模块中的变量:
     from 包.模块 import *
     此时导入模块中的所有变量,但如果模块中有一下代码
     
     __all__ = ['a','b','c']
     a=1
     b=2
     c=3
     d=4
     此时只会导入a、b、c变量
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • __init _.py文件:引入即执行,不需要手动触发,只要导入该包或包内的某一个文件,批量导入机制

    • 包和模块是不会被重复导入的

    • 不能循环导入:文件相互导入

    函数

    • def来定义函数
    def add(a, b, c):
        # raise NotImplementedError
        return a+b+c  # 没有return就会返回None
    print(add(1, 2, 3))
    # 6
    
    def todo(a, b, c):
        q = a+10
        w = b + 12
        e = c+50
        return q, w, e
    print(todo(1, 2, 3))
    # (11, 14, 53)返回的是一个元祖tuple
    get_q, get_w, get_e = todo(1, 2, 3) #序列解包,将函数返回的元祖解开
    print(get_q, get_w, get_e)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 必须参数

    • 关键字参数

      def todo(a, b):
          q = a+10
          w = b + 12
          return q, w   
      print(todo(b=20, a=10)) 
      # (20, 32)
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
    • 默认参数,非默认参数不能跟在默认参数后面

      def todo(a, b=1):
          q = a+10
          w = b + 12
          return q, w   
      print(todo(a=10)) 
      # (20, 13)
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
  • 相关阅读:
    点云欧式聚类快速了解
    【机器学习3】有监督学习经典分类算法
    什么让水果店生意好起来,水果店做生意经验分享
    【Linux Shell脚本攻略】第1章 小试牛刀
    清华GLM部署记录
    数据结构基础8:二叉树oj+层序遍历。
    LeetCode347. 前 K 个高频元素
    【信号去噪】基于麻雀搜索算法优化VM实现信号去噪附matlab代码
    程序分享--排序算法--计数排序
    opencv之cv2.findContours和drawContours(python)
  • 原文地址:https://blog.csdn.net/skyblacktoday/article/details/111937132