zoukankan      html  css  js  c++  java
  • 用法新发现

    商余函数  divmod

    商,余数=divmod(被除数,除数)

    在处理页码的问题时很好用

     # 总数据个数  条数
        total_count = len(data)
        # 总共有多少页   这里利用可商余函数  根据有没有余数判断是否要在多开一页用于存放没有被整除的页数
        total_page_num, more = divmod(total_count, per_page_num)
        if more:#如果有余数,就给页码加个一,如果没有的话 页码就是商
            total_page_num += 1

    HTML返回到后台的数据没有数字类型的

    ef user_list(request):
        #获取当前的页码,进行判断   异常处理
        try:
            page_num = int(request.GET.get("page"))  #从html中取到的是字符串类型所以要转成int
        except Exception as e:  #判断是否有错,当返回的地址是http://127.0.0.1:8001/fenye/?page=fds
            #非正常的数字,页码数的时候,就要用这个
            page_num = 1
        # 没有传页码, 默认展示第一页

    一些html中要根据数据内容显示的内容,可以先在试图函数中写好,拼接成字符串,然后再将字符串返回到html中去,  用{{拼接的字符串|safe}}   方法将它正常显示出来

      page_html = "".join(page_html_list)#是将所有的列表中的数据拼接成字符串
        # ,然后返回到HTML中去转换成可以执行的代码,  后端用到了  {{page_html|safe}}

     双下方法之 __name__  __doc__

    先看下使用装饰器的函数属性是否有变化

    ef wrapper1(func):
        def inner(*args,**kwargs):
            """
            这是装饰期的inner
            :param args:
            :param kwargs:
            :return:
            """
            print('装饰器前要执行的')
            ret=func()
            return ret
        return inner
    @wrapper1
    def func1():
      
    print('这是函数1') if __name__ == '__main__': #打印函数的名字 print(func1.__name__) #打印函数的备注 print(func1.__doc__)

    打印出的值:

    inner        可以看到打印的函数名字不是func1这个名字,因为使用装饰器有这个弊端,不能显示被装饰的函数的名字

    这是装饰期的inner   备注也是func1的函数的备注
    :param args:
    :param kwargs:
    :return:

    解决方案    加上一个wraps   具体如下

    from functools import wraps
    def wrapper1(func):
        @wraps(func)
        def inner(*args,**kwargs):
            """
            这是装饰期的inner
            :param args:
            :param kwargs:
            :return:
            """
            print('装饰器前要执行的')
            ret=func()
            return ret
        return inner
    @wrapper1
    def func1():
        print('这是函数1')
    
    if __name__ == '__main__':
        #打印函数的名字
        print(func1.__name__)
        #打印函数的备注
        print(func1.__doc__)

    打印出的值

    func1    能够正常显示func1的函数名字了
    None

  • 相关阅读:
    禁止MDA对话框的产生 Anny
    how tomcat works(第14章:服务器和服务)
    Python学习笔记2
    how tomcat works(第15章: Digester)
    how tomcat works(第17章: 启动Tomcat)
    how tomcat works(第15章: Digester)
    Python学习笔记2
    how tomcat works(第14章:服务器和服务)
    how tomcat works(第16章: 关闭钩子)
    how tomcat works(第16章: 关闭钩子)
  • 原文地址:https://www.cnblogs.com/wangkun122/p/8353576.html
Copyright © 2011-2022 走看看