常用Flask的插件bootstrap wtf

flask_bootstrap

  1. 如何在flask中使用Boostrap?
    要想在程序中集成Bootstrap,显然要对模板做所有必要的改动。不过,更简单的方法是使用一个名为Flask-Bootstrap 的Flask 扩展,简化集成的过程。Flask-Bootstrap 使用pip安装:
pip install flask_bootstrap
  1. Flask 扩展一般都在创建程序实例时初始化,下面是Flask_Bootstrap的初始化方法:
from flask_bootstrap import  Bootstrap
app = Flask(__name__)
bootstrap = Bootstrap(app)

初始化Flask-Bootstrap 之后,就可以在程序中使用一个包含所有Bootstrap 文件的基模板。这个模板利用Jinja2 的模板继承机制,让程序扩展一个具有基本页面结构的基模板,其中就有用来引入Bootstrap 的元素。

  1. 如何引用bootatrap的基模板?
{%extends "bootstrap/base.html"%}
{%block title %}Flask{% endblock %}

这两个块分别表示页面中的导航条和主体内容。在这个模板中,navbar 块使用Bootstrap 组件定义了一个简单的导航条。content 块中有个

容器,其中包含一个页面头部。

  1. Flask-Bootstrap定义的其他可用块:
    参考链接: https://pythonhosted.org/Flask-Bootstrap/basic-usage.html#available-blocks
    块名   说明
    doc 整个html文档
    html_attribs html标签属性
    html   html标签中的内容
    head head标签中的内容
    title title标签中的内容
    metas 一组meta标签
    styles 层叠样式表定义
    body_attribs body标签的属性
    body body标签中的内容
    navbar 用户定义的导航条
    content 用户定义的页面内容
    scripts 文档底部的JavaScript 声明
  2. 如何继承原有内容:
      上表中的很多块都是Flask-Bootstrap 自用的,如果直接重定义可能会导致一些问题。例如,Bootstrap 所需的文件在styles 和scripts 块中声明。如果程序需要向已经有内容的块中添加新内容,必须使用Jinja2 提供的super() 函数。例如,如果要在衍生模板中添加新的JavaScript 文件,需要这么定义scripts 块:
{% block scripts %}
{{ super() }}

{% endblock %}

首先了解一下bootstrap提供了多少block,bootstrap中的base.html如下:

{% block doc -%}       ###doc:整个HTML文档(开始)
        
###html_attribs:标签的属性
{%- block html %}     ###html:标签中的内容(开始)
  
    {%- block head %}  ###head:标签中的内容(开始)
    {% block title %}{{title|default}}{% endblock title %} ###title:标签中的内容

    {%- block metas %} ###metas:一组<meta>标签
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    {%- endblock metas %}

    {%- block styles %}   ##styles:层叠样式表定义
    <!-- Bootstrap -->
    <link href="{{bootstrap_find_resource('css/bootstrap.css', cdn='bootstrap')}}" rel="stylesheet">
    {%- endblock styles %}
    {%- endblock head %}     ###head:<head>标签中的内容(结束)
  </head>               ###body_attribs:<body>标签的属性
  <body{% block body_attribs %}{% endblock body_attribs %}>
    {% block body -%}      ###body:<body>标签中的内容(开始)
    {% block navbar %}     ###navbar:用户定义的导航条
    {%- endblock navbar %}
    {% block content -%}    ###content:用户定义的页面内容
    {%- endblock content %}

    {% block scripts %}  ###scripts:文档底部的JavaScript声明
    <script src="{{bootstrap_find_resource('jquery.js', cdn='jquery')}}"></script>
    <script src="{{bootstrap_find_resource('js/bootstrap.js', cdn='bootstrap')}}"></script>
    {%- endblock scripts %}
    {%- endblock body %} ###body:<body>标签中的内容(结束)
  </body>
{%- endblock html %}     ###html:<html>标签中的内容(结束)
</html>
{% endblock doc -%}      ###doc:整个HTML文档(结束)
</code></pre> 
  <h3>flask_wtf</h3> 
  <ol> 
   <li>为什么使用Flask-WTF?<br> request对象公开了所有客户端发送的请求信息。特别是request.form可以访问POST请求提交的表单数据。<br> 尽管Flask的request对象提供的支持足以处理web表单,但依然有许多任务会变得单调且重复。<br> 表单的HTML代码生成和验证提交的表单数据就是两个很好的例子。<br> 优势:<br> Flask-WTF扩展使得处理web表单能获得更愉快的体验。该扩展是一个封装了与框架无关的WTForms包的Flask集成。</li> 
   <li>什么是表单处理?<br> 在网页中,为了和用户进行信息交互总是不得不出现一些表单。<br> flask设计了WTForm表单库来使flask可以更加简便地管理操作表单数据。<br> WTForm中最重要的几个概念如下:<br> 1). Form类,开发者自定义的表单必须继承自Form类或者其子类。<br> Form类最主要的功能是通过其所包含的Field类提供对表单内数据的快捷访问方式。<br>   2). 各种Field类,即字段。一般而言每个Field类都对应一个input的HTML标签。<br> 比如WTForm自带的一些Field类比如BooleanField就对应,<br> SubmitField就对应等等。<br>   3). Validator类。这个类用于验证用户输入的数据的合法性。<br> 比如Length验证器可以用于验证输入数据的长度,<br> FileAllowed验证上传文件的类型等等。</li> 
  </ol> 
  <p>另外,flask为了防范csfr(cross-site request forgery)攻击,<br> 默认在使用flask-wtf之前要求app一定要设置过secret_key。<br> 最简单地可以通过app.config[‘SECRET_KEY’] = 'xxxx’来配置。</p> 
  <ol start="3"> 
   <li>常见的Field类</li> 
  </ol> 
  <p>PasswordField   密码字段,自动将输入转化为小黑点</p> 
  <p>DateField   文本字段,格式要求为datetime.date一样</p> 
  <p>IntergerField   文本字段,格式要求是整数</p> 
  <p>DecimalField   文本字段,格式要求和decimal.Decimal一样</p> 
  <p>FloatField   文本字段,值是浮点数</p> 
  <p>BooleanField   复选框,值为True或者False</p> 
  <p>RadioField   一组单选框</p> 
  <p>SelectField   下拉列表,需要注意一下的是choices参数确定了下拉选项,<br> 但是和HTML中的 标签一样,其是一个tuple组成的列表,<br> 可以认为每个tuple的第一项是选项的真正的值,而第二项是alias。</p> 
  <p>MultipleSelectField  可选多个值的下拉列表</p> 
  <ol start="4"> 
   <li> <p>Validator是验证函数:</p> <p>Validator是验证函数,把一个字段绑定某个验证函数之后,flask会在接收表单中的数据之前对数据做一个验证,<br> 如果验证成功才会接收数据。验证函数Validator如下,具体的validator可能需要的参数不太一样,这里只给出<br> 一些常用的,更多详细的用法可以参见wtforms/validators.py文件的源码,参看每一个validator类需要哪些参数:</p> </li> 
  </ol> 
  <p>*基本上每一个validator都有message参数,指出当输入数据不符合validator要求时显示什么信息。<br>   Email  验证电子邮件地址的合法性,要求正则模式是<sup>.+@([</sup>.@][^@]+)$</p> 
  <p>EqualTo  比较两个字段的值,通常用于输入两次密码等场景,可写参数fieldname,不过注意其是一个字符串变量,指向同表单中的另一个字段的字段名</p> 
  <p>IPAddress  验证IPv4地址,参数默认ipv4=True,ipv6=False。如果想要验证ipv6可以设置这两个参数反过来。</p> 
  <p>Length  验证输入的字符串的长度,可以有min,max两个参数指出要设置的长度下限和上限,注意参数类型是字符串,不是INT!!</p> 
  <p>NumberRange  验证输入数字是否在范围内,可以有min和max两个参数指出数字上限下限,注意参数类型是字符串,不是INT!!然后在这个validator的message参数里可以设置%(min)s和%(max)s两个格式化部分,来告诉前端这个范围到底是多少。其他validator也有这种类似的小技巧,可以参看源码。</p> 
  <p>Optional  无输入值时跳过同字段的其他验证函数</p> 
  <p>Required  必填字段</p> 
  <p>Regexp  用正则表达式验证值,参数regex=‘正则模式’</p> 
  <p>URL  验证URL,要求正则模式是<sup>[a-z]+://(?P<host>[</sup>/:]+)(?P:[0-9]+)?(?P /.*)?$ </p> 
  <p>AnyOf  确保值在可选值列表中。参数是values(一个可选值的列表)。特别提下,和SelectField进行配合使用时,不知道为什么SelectField的choices中项的值不能是数字。。否则AnyOf的values参数中即使有相关数字也无法识别出当前选项是合法选项。我怀疑NoneOf可能也是一样的套路。</p> 
  <p>NoneOf  确保值不在可选值列表中</p> 
  <pre><code> flask-bootstrap(添加css, js样式)---提供了base.html, wtf.html
 flask-wtf(表单处理)-
 表单类型(StringField, PasswordField, SubmitField, FileField)
 验证表单(DataRequired, Length, Email, Regexp, EqualTo)
</code></pre> 
  <p>eg:<br> wtflogin.htm:</p> 
  <pre><code>{% extends 'bootstrap/base.html' %}
{% import 'bootstrap/wtf.html' as wtf %}
{% block content %}
<form method="POST" action="/login/">
    {{ wtf.quick_form(form) }}
    {% if message %}
        <p style="color:red">{{ message }}</p>
    {% endif %}
</form>
{% endblock %}
</code></pre> 
  <p>run.py:</p> 
  <pre><code>import random
from flask import Flask, redirect, render_template, flash
from forms import LoginForm
from flask_bootstrap import  Bootstrap
app = Flask(__name__)
bootstrap = Bootstrap(app)
app.config['SECRET_KEY'] =  random._urandom(24)
@app.route('/success/')
def success():
    return  "success"
@app.route('/login/', methods=('GET', 'POST'))
def submit():
    # 实例化表单对象;
    form = LoginForm()
     # 如果是post方法并且表单验证通过的话, 返回True;
    if form.validate_on_submit():
        return redirect('/success/')
    return render_template('wtflogin.html', form=form)
app.run(port=9001)
</code></pre> 
  <p>forms</p> 
  <pre><code>from flask_wtf import FlaskForm
from flask_wtf.file import FileRequired, FileAllowed
from wtforms import StringField, PasswordField, SubmitField, FileField
from wtforms.validators import DataRequired, Length
class LoginForm(FlaskForm):
    name = StringField(
        label="用户名/邮箱/手机号",
        validators=[
             DataRequired(message="请输入用户名"),
            Length(3, 10, message="长度不符"),
        ]

    )
    passwd = PasswordField(
        label="密码",
        validators=[
             DataRequired(message="输入密码"),
            Length(3, 10,message="长度不符")
        ] )

    file = FileField(
        label="头像",
        validators=[
            FileRequired(),
            FileAllowed(['png', 'jpg'],message='文件非图片')
        ]
    )
    sumbit = SubmitField(
        label="登陆"
    )
</code></pre> 
  <p><a href="http://img.e-com-net.com/image/info8/08aec093a4f84b53af1762ad2adfdfd0.jpg" target="_blank"><img src="http://img.e-com-net.com/image/info8/08aec093a4f84b53af1762ad2adfdfd0.jpg" alt="常用Flask的插件bootstrap wtf_第1张图片" width="441" height="336" style="border:1px solid black;"></a></p> 
 </div> 
</div>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1276151475336134656"></div>
                    <script type="text/javascript" src="/views/front/js/chanyan.js"></script>
                    <!-- 文章页-底部 动态广告位 -->
                    <div class="youdao-fixed-ad" id="detail_ad_bottom"></div>
                </div>
                <div class="col-md-3">
                    <div class="row" id="ad">
                        <!-- 文章页-右侧1 动态广告位 -->
                        <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_1"> </div>
                        </div>
                        <!-- 文章页-右侧2 动态广告位 -->
                        <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_2"></div>
                        </div>
                        <!-- 文章页-右侧3 动态广告位 -->
                        <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_3"></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="container">
        <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(python)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1904020478301892608.htm"
                           title="利用Python爬虫获取Shopee(虾皮)商品详情:实战指南" target="_blank">利用Python爬虫获取Shopee(虾皮)商品详情:实战指南</a>
                        <span class="text-muted">小爬虫程序猿</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>在跨境电商领域,Shopee(虾皮)作为东南亚及台湾地区领先的电商平台,拥有海量的商品信息。无论是进行市场调研、数据分析,还是寻找热门商品,获取Shopee商品详情都是一项极具价值的任务。然而,手动浏览和整理这些信息显然是低效且容易出错的。幸运的是,通过编写Python爬虫程序,我们可以高效地完成这一任务。本文将详细介绍如何利用Python爬虫获取Shopee商品详情,并提供完整的代码示例。一、为</div>
                    </li>
                    <li><a href="/article/1904012277477076992.htm"
                           title="在Mac M1/M2芯片上完美安装DeepCTR库:避坑指南与实战验证" target="_blank">在Mac M1/M2芯片上完美安装DeepCTR库:避坑指南与实战验证</a>
                        <span class="text-muted">ku_code_ku</span>
<a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a><a class="tag" taget="_blank" href="/search/macos/1.htm">macos</a><a class="tag" taget="_blank" href="/search/%E6%8E%A8%E8%8D%90%E7%AE%97%E6%B3%95/1.htm">推荐算法</a><a class="tag" taget="_blank" href="/search/%E6%8E%A8%E8%8D%90%E7%B3%BB%E7%BB%9F/1.htm">推荐系统</a>
                        <div>让推荐算法在AppleSilicon上全速运行概述作为推荐系统领域的最经常用的明星库,DeepCTR集成了CTR预估、多任务学习等前沿模型实现。但在AppleSilicon架构的Mac设备上,安装过程常因ARM架构适配、依赖库版本冲突等问题受阻。本文通过20+次环境搭建实测,总结出最稳定的安装方案。关键版本说明(2024年验证)组件推荐版本注意事项Python3.10.x向下兼容至3.7,但3.1</div>
                    </li>
                    <li><a href="/article/1904003581850218496.htm"
                           title="数据库数值函数详解" target="_blank">数据库数值函数详解</a>
                        <span class="text-muted">web安全工具库</span>
<a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/jvm/1.htm">jvm</a>
                        <div>各类资料学习下载合集https://pan.quark.cn/s/8c91ccb5a474数值函数是数据库中用于处理数值数据的函数,可以用于执行各种数学运算、统计计算等。数值函数在数据分析及处理时非常重要,能够帮助我们进行数据的聚合、计算和转换。在本篇博客中,我们将详细介绍常用的数据库数值函数,并通过Python和SQLite进行示例,帮助您理解和应用这些函数。1.数值函数的基本概念数值函数是用于</div>
                    </li>
                    <li><a href="/article/1904000054587355136.htm"
                           title="Python中Requests的Cookies的简单使用" target="_blank">Python中Requests的Cookies的简单使用</a>
                        <span class="text-muted">北条苒茗殇</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/Requests/1.htm">Requests</a>
                        <div>概述Python的Requests库中有一个cookies,是用于管理HTTPCookie的工具,可以像字典一样操作Cookie,支持自动处理作用域(域名、路径)和持久化,cookies是一个RequestsCookieJar的类型。一、概念1.作用自动存储服务器返回的Cookie根据请求域名和路径进行自动发送匹配的Cookie支持手动添加、修改、删除Cookie2.RequestsCookieJ</div>
                    </li>
                    <li><a href="/article/1904000055065505792.htm"
                           title="Pytest基础使用" target="_blank">Pytest基础使用</a>
                        <span class="text-muted">北条苒茗殇</span>
<a class="tag" taget="_blank" href="/search/pytest/1.htm">pytest</a>
                        <div>概述Pytest是Python里的一个强大的测试框架,灵活易用,可以进行功能,自动化测试使用,可以与Requests,Selenium等进行结合使用,同时可以生成Html的报告。一、Pytest的基本使用在未指定Pytest的配置文件时,会对以下文件进行执行:test_*.py,如:test_1.py*_test.py,如:1_test.py会对以下的类和函数进行执行:类:以Test_开头的类,如</div>
                    </li>
                    <li><a href="/article/1903995513812873216.htm"
                           title="Visual Studio Code官网下载地址及使用技巧(含常用的拓展插件推荐)" target="_blank">Visual Studio Code官网下载地址及使用技巧(含常用的拓展插件推荐)</a>
                        <span class="text-muted">ITCTCSDN</span>
<a class="tag" taget="_blank" href="/search/vscode/1.htm">vscode</a><a class="tag" taget="_blank" href="/search/ide/1.htm">ide</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E8%BE%91%E5%99%A8/1.htm">编辑器</a>
                        <div>VisualStudioCode(简称“VSCode”)是Microsoft于2015年4月发布的可运行于MacOS、Windows和Linux之上的跨平台源代码编辑器,它具有对JavaScript,TypeScript和Node.js的内置支持,并具有丰富的其他语言(例如C++,C#,Java,Python,PHP,Go)和运行时(例如.NET和Unity)扩展的生态系统。VisualStudi</div>
                    </li>
                    <li><a href="/article/1903993997509062656.htm"
                           title="python中rmdir和rmtree的用法" target="_blank">python中rmdir和rmtree的用法</a>
                        <span class="text-muted">Gin387</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>shutil.rmtree()是Python中shutil模块提供的一个函数,用于递归删除整个目录树(包括子目录和所有文件)。os.rmdir()(只能删除空目录)不同,shutil.rmtree()可以强制删除非空目录importshutil#删除指定目录及其所有内容shutil.rmtree('path/to/directory')</div>
                    </li>
                    <li><a href="/article/1903992105815044096.htm"
                           title="构建 Python 插件架构:打造灵活可扩展的模块化应用" target="_blank">构建 Python 插件架构:打造灵活可扩展的模块化应用</a>
                        <span class="text-muted">全栈探索者chen</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a><a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E4%BA%BA%E7%94%9F/1.htm">程序人生</a><a class="tag" taget="_blank" href="/search/%E6%8F%92%E4%BB%B6/1.htm">插件</a>
                        <div>构建Python插件架构:打造灵活可扩展的模块化应用前言在现代软件开发中,单一的代码库往往难以满足不断变化的业务需求和多样化的扩展场景。如何设计一个应用,使其既能保持核心功能的稳定,又能轻松集成第三方功能、模块或定制化扩展?答案就是——插件架构。通过插件架构,你可以让应用具备极高的灵活性,支持动态加载、无缝扩展以及解耦维护。本文将深入探讨如何在Python中设计和构建一个插件架构。从核心概念、模块</div>
                    </li>
                    <li><a href="/article/1903989954606854144.htm"
                           title="31天Python入门——第11天:挑战一口气把闭包·装饰器讲明白" target="_blank">31天Python入门——第11天:挑战一口气把闭包·装饰器讲明白</a>
                        <span class="text-muted">安然无虞</span>
<a class="tag" taget="_blank" href="/search/Python%E6%89%8B%E6%8A%8A%E6%89%8B%E6%95%99%E7%A8%8B/1.htm">Python手把手教程</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E5%90%8E%E7%AB%AF/1.htm">后端</a><a class="tag" taget="_blank" href="/search/pyqt/1.htm">pyqt</a>
                        <div>你好,我是安然无虞。文章目录1.闭包扩展知识:闭包的自由变量是如何存储的2.装饰器装饰器的应用场景3.补充练习1.闭包闭包是指在一个函数内部定义的函数,并且这个内部函数可以访问外部函数的变量、参数.换句话说,闭包是一个包含了函数及其相关引用环境的组合体.在Python中,当一个函数返回了内部函数的引用时,这个内部函数可以访问并操作外部函数的局部变量,它就创建了一个闭包,即使外部函数已经执行完毕,它</div>
                    </li>
                    <li><a href="/article/1903988567684739072.htm"
                           title="opencv python rgb转yuv_OpenCV之色彩空间与色彩空间转换" target="_blank">opencv python rgb转yuv_OpenCV之色彩空间与色彩空间转换</a>
                        <span class="text-muted">xiao fei</span>
<a class="tag" taget="_blank" href="/search/opencv/1.htm">opencv</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/rgb%E8%BD%ACyuv/1.htm">rgb转yuv</a>
                        <div>python代码:importcv2ascvsrc=cv.imread("test.jpg")cv.namedWindow("rgb",cv.WINDOW_AUTOSIZE)cv.imshow("rgb",src)#RGBtoHSVhsv=cv.cvtColor(src,cv.COLOR_BGR2HSV)cv.imshow("hsv",hsv)#RGBtoYUVyuv=cv.cvtColor(sr</div>
                    </li>
                    <li><a href="/article/1903987433905647616.htm"
                           title="【AI大模型】搭建本地大模型GPT-NeoX:详细步骤及常见问题处理" target="_blank">【AI大模型】搭建本地大模型GPT-NeoX:详细步骤及常见问题处理</a>
                        <span class="text-muted">qzw1210</span>
<a class="tag" taget="_blank" href="/search/gpt/1.htm">gpt</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a>
                        <div>搭建本地大模型GPT-NeoX:详细步骤及常见问题处理GPT-NeoX是一个开源的大型语言模型框架,由EleutherAI开发,可用于训练和部署类似GPT-3的大型语言模型。本指南将详细介绍如何在本地环境中搭建GPT-NeoX,并解决过程中可能遇到的常见问题。1.系统要求1.1硬件要求1.2软件要求操作系统:Linux(推荐Ubuntu20.04或更高版本)CUDA:11.2或更高版本Python</div>
                    </li>
                    <li><a href="/article/1903986929544785920.htm"
                           title="python 列表倒序输出" target="_blank">python 列表倒序输出</a>
                        <span class="text-muted">小琳爱分享</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>python列表倒序输出#使用reverseli1=[1,6,4,3,7,9]li2=['a','m','s','g']li1.reverse()li2.reverse()print(li1,li2)#利用list切片li1=[1,6,4,3,7,9]li2=['a','m','s','g']print(li1[::-1])print(li2[::-1])#利用算法进行转换,这里需要用到深层cop</div>
                    </li>
                    <li><a href="/article/1903983776283815936.htm"
                           title="python怎么输出倒序" target="_blank">python怎么输出倒序</a>
                        <span class="text-muted">hakesashou</span>
<a class="tag" taget="_blank" href="/search/python%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86/1.htm">python基础知识</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a>
                        <div>python怎么输出倒序?下面给大家介绍四种方法:创建测试列表>>> lst = [1,2,3,4,5,6]方法1:>>> lst.reverse() #reverse()反转>>> lst[6, 5, 4, 3, 2, 1]方法2:>>> lst1 = [i for i in reversed(lst)]  #reversed只适用于与序列(列表、元组、字符串)>>> lst1[6, 5, 4,</div>
                    </li>
                    <li><a href="/article/1903982641229656064.htm"
                           title="chatgpt赋能python:Python怎么倒序列表" target="_blank">chatgpt赋能python:Python怎么倒序列表</a>
                        <span class="text-muted">aijinglingchat</span>
<a class="tag" taget="_blank" href="/search/ChatGpt/1.htm">ChatGpt</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/chatgpt/1.htm">chatgpt</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA/1.htm">计算机</a>
                        <div>Python怎么倒序列表列表是Python中最常用的数据结构之一,但在实际使用时,有时需要将列表进行倒序排列。Python提供了多种方法来实现这个需求,本文将简要介绍这些方法以及它们的使用场景。方法1:使用reverse()函数使用列表的reverse()方法是Python中最简单直接的方法来倒序列表。该方法会将原列表倒置。lst=[1,2,3,4,5]lst.reverse()print(lst</div>
                    </li>
                    <li><a href="/article/1903982263167676416.htm"
                           title="“统计视角看世界”专栏阅读引导" target="_blank">“统计视角看世界”专栏阅读引导</a>
                        <span class="text-muted">赛卡</span>
<a class="tag" taget="_blank" href="/search/%E7%BB%9F%E8%AE%A1%E8%A7%86%E8%A7%92%E7%9C%8B%E4%B8%96%E7%95%8C/1.htm">统计视角看世界</a><a class="tag" taget="_blank" href="/search/%E4%BF%A1%E6%81%AF%E5%8F%AF%E8%A7%86%E5%8C%96/1.htm">信息可视化</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/1.htm">数据分析</a>
                        <div>根据文章主题和逻辑关系,我为您设计以下阅读引导方案:1.六西格玛基础2.帕累托图3.直方图4.散点图基础5.散点图高阶6.多变量可视化7.密度图进阶8.回归分析配套文字说明:入门基石(必读)《1.六西格玛遇上Python》→方法论总纲,建议优先精读基础三剑客(可并行)├─《2.帕累托图》→重点数据排序与决策├─《3.直方图》→数据分布核心工具└─《4.散点图》→数据探索第一视角高阶应用链(递进学习</div>
                    </li>
                    <li><a href="/article/1903981758693568512.htm"
                           title="自定义mavlink 生成wireshark wlua插件错误(已解决)" target="_blank">自定义mavlink 生成wireshark wlua插件错误(已解决)</a>
                        <span class="text-muted">JasonComing</span>
<a class="tag" taget="_blank" href="/search/%E9%97%AE%E9%A2%98%E6%94%B6%E9%9B%86/1.htm">问题收集</a><a class="tag" taget="_blank" href="/search/wireshark/1.htm">wireshark</a><a class="tag" taget="_blank" href="/search/wlua/1.htm">wlua</a><a class="tag" taget="_blank" href="/search/mavlink/1.htm">mavlink</a>
                        <div>进入正题python3-mpymavlink.tools.mavgen--lang=WLua--wire-protocol=2.0--output=output/developmessage_definitions/v1.0/development.xml编译WLUA的时候遇到一些问题1.ERROR:SCHEMASV:SCHEMAV_CVC_ENUMERATION_VALID3765:0:ERRO</div>
                    </li>
                    <li><a href="/article/1903981125915701248.htm"
                           title="吐血整理 python最全习题100道(含答案)持续更新题目,建议收藏!" target="_blank">吐血整理 python最全习题100道(含答案)持续更新题目,建议收藏!</a>
                        <span class="text-muted">Bejpse</span>
<a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0%E8%B7%AF%E7%BA%BF/1.htm">学习路线</a><a class="tag" taget="_blank" href="/search/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4/1.htm">阿里巴巴</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/pycharm/1.htm">pycharm</a><a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a><a class="tag" taget="_blank" href="/search/java-ee/1.htm">java-ee</a>
                        <div>最近为了提升python水平,在网上找到了python习题,然后根据自己对于python的掌握,整理出来了答案,如果小伙伴们有更好的实现方式,可以下面留言大家一起讨论哦~已知一个字符串为“hello_world_yoyo”,如何得到一个队列[“hello”,”world”,”yoyo”]test=‘hello_world_yoyo’使用split函数,分割字符串,并且将数据转换成列表类型print</div>
                    </li>
                    <li><a href="/article/1903972544617181184.htm"
                           title="2024年第五届MathorCup数学应用挑战赛--大数据竞赛思路、代码更新中....." target="_blank">2024年第五届MathorCup数学应用挑战赛--大数据竞赛思路、代码更新中.....</a>
                        <span class="text-muted">宇哥预测优化代码学习</span>
<a class="tag" taget="_blank" href="/search/1024%E7%A8%8B%E5%BA%8F%E5%91%98%E8%8A%82/1.htm">1024程序员节</a>
                        <div>欢迎来到本博客❤️❤️博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。⛳️座右铭:行百里者,半于九十。本文目录如下:目录⛳️研赛及概况一、竞赛背景与目的二、组织机构与参赛对象三、竞赛时间与流程四、竞赛要求与规则五、奖项设置与奖励六、研究文档撰写建议七、参考资料与资源1找程序网站推荐2公式编辑器、流程图、论文排版324年研赛资源下载4思路、Python、Matlab代码分享......⛳</div>
                    </li>
                    <li><a href="/article/1903962577549979648.htm"
                           title="2024MathorCup数学建模之——MathorCup奖杯”获得者经验思路分享" target="_blank">2024MathorCup数学建模之——MathorCup奖杯”获得者经验思路分享</a>
                        <span class="text-muted">美赛数学建模</span>
<a class="tag" taget="_blank" href="/search/%E6%95%B0%E5%AD%A6%E5%BB%BA%E6%A8%A1/1.htm">数学建模</a>
                        <div>一、经验分享1.工具选择:顺手即可。Matlab和Python都是比较主流的选择,二者的应用场合各有不同。Python在数据分析、深度学习方面的优势愈发明显,而Matlab更适合进行物理仿真和数值计算。不过随着Python社区不断发展,其功能也愈发全面与强大,因此我们比较推荐学有余力的情况下可以更早接触Python。2.模型算法:多多益善。不一定要精通所有的算法,但是手上至少要准备一些常用的算法(</div>
                    </li>
                    <li><a href="/article/1903949088987082752.htm"
                           title="Python 用户账户(创建用户账户)" target="_blank">Python 用户账户(创建用户账户)</a>
                        <span class="text-muted">钢铁男儿</span>
<a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/%E4%BB%8E%E5%85%A5%E9%97%A8%E5%88%B0%E7%B2%BE%E9%80%9A/1.htm">从入门到精通</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/sqlite/1.htm">sqlite</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a>
                        <div>Web应用程序的核心是让任何用户都能够注册账户并能够使用它,不管用户身处何方。在本章中,你将创建一些表单,让用户能够添加主题和条目,以及编辑既有的条目。你还将学习Django如何防范对基于表单的网页发起的常见攻击,这让你无需花太多时间考虑确保应用程序安全的问题。然后,我们将实现一个用户身份验证系统。你将创建一个注册页面,供用户创建账户,并让有些页面只能供已登录的用户访问。接下来,我们将修改一些视图</div>
                    </li>
                    <li><a href="/article/1903944420290523136.htm"
                           title="使用欧拉法数值求解微分方程的 Python 实现" target="_blank">使用欧拉法数值求解微分方程的 Python 实现</a>
                        <span class="text-muted">神经网络15044</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>编写函数y=Eular(x,h),使用欧拉法数值求解微分方程初值为函数Eular(x,h)中Cx为计算结束时微分方程x的值,h为计算步长再编写脚本,通过调用函数分别以不同步长(例如h=1.0,h=0.5,h=0.25)计算y(3),并分析步长和误差之间的关系。以下是使用欧拉法数值求解微分方程的Python实现。假设我们要求解的微分方程是dydx=f(x,y)\frac{dy}{dx}=f(x,y)</div>
                    </li>
                    <li><a href="/article/1903943910804221952.htm"
                           title="使用AirtableLoader轻松加载数据到Python" target="_blank">使用AirtableLoader轻松加载数据到Python</a>
                        <span class="text-muted">bavDHAUO</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>在现代软件开发中,数据的管理与使用非常关键。Airtable作为一种灵活的数据库应用,提供了简便且强大的数据处理方式。而通过使用AirtableLoader这种工具,可以轻松地将Airtable中的数据加载到Python项目中进行处理。技术背景介绍Airtable是一款集电子表格和数据库功能于一体的工具,它以其简单易用、强大的扩展性而受到众多开发者的喜爱。AirtableLoader是一个文档加载</div>
                    </li>
                    <li><a href="/article/1903943907998232576.htm"
                           title="【Python工具】Jupyter Notebook常用快捷键" target="_blank">【Python工具】Jupyter Notebook常用快捷键</a>
                        <span class="text-muted">清平乐的技术博客</span>
<a class="tag" taget="_blank" href="/search/Python%E9%AB%98%E7%BA%A7%E5%BA%94%E7%94%A8/1.htm">Python高级应用</a><a class="tag" taget="_blank" href="/search/%E7%94%B1%E6%B5%85%E5%85%A5%E6%B7%B1%E5%AD%A6Python/1.htm">由浅入深学Python</a><a class="tag" taget="_blank" href="/search/jupyter/1.htm">jupyter</a><a class="tag" taget="_blank" href="/search/ide/1.htm">ide</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>1.JupyterNotebook的启动与停止环境为Windows10系统首先win+R进入命令提示符cmd,用cd命令切换到工作目录,键入命令jupyternotebook2.JupyterNotebook常用快捷键2.1模式切换当前cell侧边为蓝色时,表示此时为命令模式,按Enter切换为编辑模式当前cell侧边为绿色时,表示此时为编辑模式,按Esc切换为命令模式2.2命令模式快捷键H:显示</div>
                    </li>
                    <li><a href="/article/1903930033358041088.htm"
                           title="Pytorch深度学习教程_9_nn模块构建神经网络" target="_blank">Pytorch深度学习教程_9_nn模块构建神经网络</a>
                        <span class="text-muted">tRNA做科研</span>
<a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0%E4%BF%9D%E5%A7%86%E6%95%99%E7%A8%8B/1.htm">深度学习保姆教程</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/pytorch/1.htm">pytorch</a><a class="tag" taget="_blank" href="/search/%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/1.htm">神经网络</a>
                        <div>欢迎来到《深度学习保姆教程》系列的第九篇!在前面的几篇中,我们已经介绍了Python、numpy及pytorch的基本使用,进行了梯度及神经网络的实践并学习了激活函数和激活函数,在上一个教程中我们学习了优化算法。今天,我们将开始使用pytorch构建我们自己的神经网络。欢迎订阅专栏进行系统学习:深度学习保姆教程_tRNA做科研的博客-CSDN博客目录1.理解nn模块:(1)使用nn.Sequent</div>
                    </li>
                    <li><a href="/article/1903928392810557440.htm"
                           title="Python 单例模式的 5 种实现方式:深入解析与最佳实践" target="_blank">Python 单例模式的 5 种实现方式:深入解析与最佳实践</a>
                        <span class="text-muted">做测试的小薄</span>
<a class="tag" taget="_blank" href="/search/%E6%B5%8B%E8%AF%95%E9%AB%98%E9%98%B6/1.htm">测试高阶</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E4%BE%8B%E6%A8%A1%E5%BC%8F/1.htm">单例模式</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%8A%A8%E5%8C%96%E6%B5%8B%E8%AF%95/1.htm">自动化测试</a><a class="tag" taget="_blank" href="/search/%E6%B5%8B%E8%AF%95%E6%A1%86%E6%9E%B6/1.htm">测试框架</a>
                        <div>单例模式(SingletonPattern)是一种经典的设计模式,其核心思想是确保一个类在整个程序运行期间只有一个实例,并提供一个全局访问点。这种模式在许多场景中非常有用,例如全局配置管理、日志记录器、数据库连接池等。然而,Python的灵活性使得实现单例模式有多种方式,每种方法都有其特点和适用场景。本文将详细介绍Python中实现单例模式的5种常见方法,并深入分析它们的优缺点以及适用场景,帮助您</div>
                    </li>
                    <li><a href="/article/1903919431633924096.htm"
                           title="Python 爬虫实战:舞台剧与演出信息获取" target="_blank">Python 爬虫实战:舞台剧与演出信息获取</a>
                        <span class="text-muted">西攻城狮北</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%88%AC%E8%99%AB/1.htm">爬虫</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>作为一名对文化艺术活动和数据获取感兴趣的内容创作者,我决定利用Python爬虫技术抓取舞台剧与演出信息。这对于文艺爱好者、文化活动组织者以及相关研究人员来说,是一个极具价值的探索。一、项目背景舞台剧和各类演出活动丰富了人们的精神文化生活。许多城市都有专业的演出场馆,如国家大剧院、上海大剧院等,它们会定期发布演出信息。通过爬虫技术,我们可以自动化地获取这些演出信息,方便用户查询和分析。二、技术选型在</div>
                    </li>
                    <li><a href="/article/1903917285911883776.htm"
                           title="LeetCode剑指offer题目记录4" target="_blank">LeetCode剑指offer题目记录4</a>
                        <span class="text-muted">t.y.Tang</span>
<a class="tag" taget="_blank" href="/search/LeetCode%E8%AE%B0%E5%BD%95/1.htm">LeetCode记录</a><a class="tag" taget="_blank" href="/search/leetcode/1.htm">leetcode</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%9F%A9%E9%98%B5/1.htm">矩阵</a>
                        <div>leetcode刷题开始啦,每天记录几道题.目录剑指offer07.重建二叉树题目描述示例思路python改进剑指offer09.用两个栈实现队列题目描述示例思路python剑指offer10-1.斐波那契数列题目描述思路pythonC++剑指offer10-2.青蛙跳台阶问题问题描述思路C++剑指offer07.重建二叉树题目描述输入某二叉树的前序遍历和中序遍历的结果,请构建该二叉树并返回其根节</div>
                    </li>
                    <li><a href="/article/1903916529389465600.htm"
                           title="【技巧分享】开发环境配置Python、R、Stata" target="_blank">【技巧分享】开发环境配置Python、R、Stata</a>
                        <span class="text-muted">A线上仓库</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a>
                        <div>自用,看心情更新~版本更新2024-03-131.0版本2024-09-25FIX:1.conda命令ADD:1.python调用r命令2.r系统配置2025-01-22更新VSCode调用Statado文件目录版本更新Python环境配置Cheatsheet基础配置可选:环境配置:conda命令包管理R环境配置基础配置R命令Python调用Method1:`rpy2`Stata环境配置基础配置P</div>
                    </li>
                    <li><a href="/article/1903909087750451200.htm"
                           title="python实现成语接龙" target="_blank">python实现成语接龙</a>
                        <span class="text-muted">Camellia 泡泡</span>
<a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                        <div>first_idiom='万事如意'end_str=first_idiom[-1]new_li=[first_idiom]li=['发愤图强','笑容满面','意气风发','强颜欢笑']forindexinrange(len(li)):foriinli:ifend_str==i[0]:new_li.append(i)li.remove(i)end_str=i[-1]breakprint(new_l</div>
                    </li>
                    <li><a href="/article/1903905176729743360.htm"
                           title="涛哥聊Python | borb,一个好用的 Python 库,处理 PDF 文件好帮手!" target="_blank">涛哥聊Python | borb,一个好用的 Python 库,处理 PDF 文件好帮手!</a>
                        <span class="text-muted">双木的木</span>
<a class="tag" taget="_blank" href="/search/python%E6%8B%93%E5%B1%95%E5%AD%A6%E4%B9%A0/1.htm">python拓展学习</a><a class="tag" taget="_blank" href="/search/python%E5%BA%93/1.htm">python库</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a><a class="tag" taget="_blank" href="/search/pdf/1.htm">pdf</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a>
                        <div>本文来源公众号“涛哥聊Python”,仅用于学术分享,侵权删,干货满满。原文链接:borb,一个好用的Python库!大家好,今天为大家分享一个好用的Python库-borb。Github地址:https://github.com/jorisschellekens/borbPythonBorb是一个用于处理PDF文件的Python库,它提供了丰富的功能和工具,使得PDF文件的创建、修改和解析变得更</div>
                    </li>
                                <li><a href="/article/79.htm"
                                       title="基本数据类型和引用类型的初始值" target="_blank">基本数据类型和引用类型的初始值</a>
                                    <span class="text-muted">3213213333332132</span>
<a class="tag" taget="_blank" href="/search/java%E5%9F%BA%E7%A1%80/1.htm">java基础</a>
                                    <div>package com.array;

/**
 * @Description 测试初始值
 * @author FuJianyong
 * 2015-1-22上午10:31:53
 */
public class ArrayTest {
    
	ArrayTest at;
	String str;
	byte bt;
	short s;
	int i;
	long</div>
                                </li>
                                <li><a href="/article/206.htm"
                                       title="摘抄笔记--《编写高质量代码:改善Java程序的151个建议》" target="_blank">摘抄笔记--《编写高质量代码:改善Java程序的151个建议》</a>
                                    <span class="text-muted">白糖_</span>
<a class="tag" taget="_blank" href="/search/%E9%AB%98%E8%B4%A8%E9%87%8F%E4%BB%A3%E7%A0%81/1.htm">高质量代码</a>
                                    <div>        记得3年前刚到公司,同桌同事见我无事可做就借我看《编写高质量代码:改善Java程序的151个建议》这本书,当时看了几页没上心就没研究了。到上个月在公司偶然看到,于是乎又找来看看,我的天,真是非常多的干货,对于我这种静不下心的人真是帮助莫大呀。 
  
        看完整本书,也记了不少笔记</div>
                                </li>
                                <li><a href="/article/333.htm"
                                       title="【备忘】Django 常用命令及最佳实践" target="_blank">【备忘】Django 常用命令及最佳实践</a>
                                    <span class="text-muted">dongwei_6688</span>
<a class="tag" taget="_blank" href="/search/django/1.htm">django</a>
                                    <div>注意:本文基于 Django 1.8.2 版本 
  
生成数据库迁移脚本(python 脚本) 
python manage.py makemigrations polls 
 说明:polls 是你的应用名字,运行该命令时需要根据你的应用名字进行调整 
  
查看该次迁移需要执行的 SQL 语句(只查看语句,并不应用到数据库上): 
python manage.p</div>
                                </li>
                                <li><a href="/article/460.htm"
                                       title="阶乘算法之一N! 末尾有多少个零" target="_blank">阶乘算法之一N! 末尾有多少个零</a>
                                    <span class="text-muted">周凡杨</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E9%98%B6%E4%B9%98/1.htm">阶乘</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E6%95%88%E7%8E%87/1.htm">效率</a>
                                    <div>                                 &n</div>
                                </li>
                                <li><a href="/article/587.htm"
                                       title="spring注入servlet" target="_blank">spring注入servlet</a>
                                    <span class="text-muted">g21121</span>
<a class="tag" taget="_blank" href="/search/Spring%E6%B3%A8%E5%85%A5/1.htm">Spring注入</a>
                                    <div>传统的配置方法是无法将bean或属性直接注入到servlet中的,配置代理servlet亦比较麻烦,这里其实有比较简单的方法,其实就是在servlet的init()方法中加入要注入的内容: 
ServletContext application = getServletContext();
WebApplicationContext wac = WebApplicationContextUtil</div>
                                </li>
                                <li><a href="/article/714.htm"
                                       title="Jenkins 命令行操作说明文档" target="_blank">Jenkins 命令行操作说明文档</a>
                                    <span class="text-muted">510888780</span>
<a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a>
                                    <div> 
假设Jenkins的URL为http://22.11.140.38:9080/jenkins/ 
 
 
 
基本的格式为 
 
java 
 
基本的格式为 
 
java -jar jenkins-cli.jar [-s JENKINS_URL] command [options][args] 
 
 
 
 
下面具体介绍各个命令的作用及基本使用方法 
 
 
 
1. &nb</div>
                                </li>
                                <li><a href="/article/841.htm"
                                       title="UnicodeBlock检测中文用法" target="_blank">UnicodeBlock检测中文用法</a>
                                    <span class="text-muted">布衣凌宇</span>
<a class="tag" taget="_blank" href="/search/UnicodeBlock/1.htm">UnicodeBlock</a>
                                    <div>/**  * 判断输入的是汉字  */ public static boolean isChinese(char c) {        Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);    </div>
                                </li>
                                <li><a href="/article/968.htm"
                                       title="java下实现调用oracle的存储过程和函数" target="_blank">java下实现调用oracle的存储过程和函数</a>
                                    <span class="text-muted">aijuans</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/orale/1.htm">orale</a>
                                    <div>  1.创建表:STOCK_PRICES 
   
  2.插入测试数据: 
   
  3.建立一个返回游标:  
PKG_PUB_UTILS 
   4.创建和存储过程:P_GET_PRICE 
  
   5.创建函数: 
   6.JAVA调用存储过程返回结果集 
JDBCoracle10G_INVO</div>
                                </li>
                                <li><a href="/article/1095.htm"
                                       title="Velocity Toolbox" target="_blank">Velocity Toolbox</a>
                                    <span class="text-muted">antlove</span>
<a class="tag" taget="_blank" href="/search/%E6%A8%A1%E6%9D%BF/1.htm">模板</a><a class="tag" taget="_blank" href="/search/tool/1.htm">tool</a><a class="tag" taget="_blank" href="/search/box/1.htm">box</a><a class="tag" taget="_blank" href="/search/velocity/1.htm">velocity</a>
                                    <div>velocity.VelocityUtil 
package velocity;

import org.apache.velocity.Template;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.c</div>
                                </li>
                                <li><a href="/article/1222.htm"
                                       title="JAVA正则表达式匹配基础" target="_blank">JAVA正则表达式匹配基础</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E7%9A%84%E5%8C%B9%E9%85%8D/1.htm">正则表达式的匹配</a>
                                    <div>  
正则表达式;提高程序的性能,简化代码,提高代码的可读性,简化对字符串的操作 
  
正则表达式的用途; 
字符串的匹配

字符串的分割

字符串的查找

字符串的替换
 
  
  
  
正则表达式的验证语法 
    
  [a]    //[]表示这个字符只出现一次  ,[a] 表示a只出现一</div>
                                </li>
                                <li><a href="/article/1349.htm"
                                       title="是否使用EL表达式的配置" target="_blank">是否使用EL表达式的配置</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/jsp/1.htm">jsp</a><a class="tag" taget="_blank" href="/search/web.xml/1.htm">web.xml</a><a class="tag" taget="_blank" href="/search/EL/1.htm">EL</a><a class="tag" taget="_blank" href="/search/EasyTemplate/1.htm">EasyTemplate</a>
                                    <div>        今天在开发过程中发现一个细节问题,由于前端采用EasyTemplate模板方法实现数据展示,但老是不能正常显示出来。后来发现竟是EL将我的EasyTemplate的${...}解释执行了,导致我的模板不能正常展示后台数据。 
        网</div>
                                </li>
                                <li><a href="/article/1476.htm"
                                       title="精通Oracle10编程SQL(1-3)PLSQL基础" target="_blank">精通Oracle10编程SQL(1-3)PLSQL基础</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/plsql/1.htm">plsql</a>
                                    <div>--只包含执行部分的PL/SQL块
--set serveroutput off
begin
  dbms_output.put_line('Hello,everyone!');
end;


select * from emp;

--包含定义部分和执行部分的PL/SQL块
declare
   v_ename varchar2(5);
begin
   select </div>
                                </li>
                                <li><a href="/article/1603.htm"
                                       title="【Nginx三】Nginx作为反向代理服务器" target="_blank">【Nginx三】Nginx作为反向代理服务器</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a>
                                    <div>Nginx一个常用的功能是作为代理服务器。代理服务器通常完成如下的功能: 
  
 
 接受客户端请求 
 将请求转发给被代理的服务器 
 从被代理的服务器获得响应结果 
 把响应结果返回给客户端 
 实例 
本文把Nginx配置成一个简单的代理服务器 
 
 对于静态的html和图片,直接从Nginx获取 
 对于动态的页面,例如JSP或者Servlet,Nginx则将请求转发给Res</div>
                                </li>
                                <li><a href="/article/1730.htm"
                                       title="Plugin execution not covered by lifecycle configuration: org.apache.maven.plugin" target="_blank">Plugin execution not covered by lifecycle configuration: org.apache.maven.plugin</a>
                                    <span class="text-muted">blackproof</span>
<a class="tag" taget="_blank" href="/search/maven/1.htm">maven</a><a class="tag" taget="_blank" href="/search/%E6%8A%A5%E9%94%99/1.htm">报错</a>
                                    <div>转:http://stackoverflow.com/questions/6352208/how-to-solve-plugin-execution-not-covered-by-lifecycle-configuration-for-sprin 
  
maven报错: 
Plugin execution not covered by lifecycle configuration: </div>
                                </li>
                                <li><a href="/article/1857.htm"
                                       title="发布docker程序到marathon" target="_blank">发布docker程序到marathon</a>
                                    <span class="text-muted">ronin47</span>
<a class="tag" taget="_blank" href="/search/docker+%E5%8F%91%E5%B8%83%E5%BA%94%E7%94%A8/1.htm">docker 发布应用</a>
                                    <div>1 发布docker程序到marathon 1.1 搭建私有docker registry 1.1.1 安装docker regisry 
docker pull docker-registry
docker run -t -p 5000:5000 docker-registry
 下载docker镜像并发布到私有registry 
docker pull consol/tomcat-8.0
</div>
                                </li>
                                <li><a href="/article/1984.htm"
                                       title="java-57-用两个栈实现队列&&用两个队列实现一个栈" target="_blank">java-57-用两个栈实现队列&&用两个队列实现一个栈</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div>
import java.util.ArrayList;
import java.util.List;
import java.util.Stack;

	/*
	 * Q 57 用两个栈实现队列
	 */

public class QueueImplementByTwoStacks {

	private Stack<Integer> stack1;
	pr</div>
                                </li>
                                <li><a href="/article/2111.htm"
                                       title="Nginx配置性能优化" target="_blank">Nginx配置性能优化</a>
                                    <span class="text-muted">cfyme</span>
<a class="tag" taget="_blank" href="/search/nginx/1.htm">nginx</a>
                                    <div>转载地址:http://blog.csdn.net/xifeijian/article/details/20956605 
  
大多数的Nginx安装指南告诉你如下基础知识——通过apt-get安装,修改这里或那里的几行配置,好了,你已经有了一个Web服务器了。而且,在大多数情况下,一个常规安装的nginx对你的网站来说已经能很好地工作了。然而,如果你真的想挤压出Nginx的性能,你必</div>
                                </li>
                                <li><a href="/article/2238.htm"
                                       title="[JAVA图形图像]JAVA体系需要稳扎稳打,逐步推进图像图形处理技术" target="_blank">[JAVA图形图像]JAVA体系需要稳扎稳打,逐步推进图像图形处理技术</a>
                                    <span class="text-muted">comsci</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                                    <div> 
 
     对图形图像进行精确处理,需要大量的数学工具,即使是从底层硬件模拟层开始设计,也离不开大量的数学工具包,因为我认为,JAVA语言体系在图形图像处理模块上面的研发工作,需要从开发一些基础的,类似实时数学函数构造器和解析器的软件包入手,而不是急于利用第三方代码工具来实现一个不严格的图形图像处理软件...... 
 
  &nb</div>
                                </li>
                                <li><a href="/article/2365.htm"
                                       title="MonkeyRunner的使用" target="_blank">MonkeyRunner的使用</a>
                                    <span class="text-muted">dai_lm</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/MonkeyRunner/1.htm">MonkeyRunner</a>
                                    <div>要使用MonkeyRunner,就要学习使用Python,哎 
 
先抄一段官方doc里的代码 
作用是启动一个程序(应该是启动程序默认的Activity),然后按MENU键,并截屏 
 

# Imports the monkeyrunner modules used by this program
from com.android.monkeyrunner import MonkeyRun</div>
                                </li>
                                <li><a href="/article/2492.htm"
                                       title="Hadoop-- 海量文件的分布式计算处理方案" target="_blank">Hadoop-- 海量文件的分布式计算处理方案</a>
                                    <span class="text-muted">datamachine</span>
<a class="tag" taget="_blank" href="/search/mapreduce/1.htm">mapreduce</a><a class="tag" taget="_blank" href="/search/hadoop/1.htm">hadoop</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F%E8%AE%A1%E7%AE%97/1.htm">分布式计算</a>
                                    <div>csdn的一个关于hadoop的分布式处理方案,存档。 
原帖:http://blog.csdn.net/calvinxiu/article/details/1506112。 
 
    Hadoop 是Google MapReduce的一个Java实现。MapReduce是一种简化的分布式编程模式,让程序自动分布到一个由普通机器组成的超大集群上并发执行。就如同ja</div>
                                </li>
                                <li><a href="/article/2619.htm"
                                       title="以資料庫驗證登入" target="_blank">以資料庫驗證登入</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a>
                                    <div>以資料庫驗證登入 
由於 Yii 內定的原始框架程式, 採用綁定在UserIdentity.php 的 demo 與 admin 帳號密碼:    public function authenticate()    {        $users=array( &nbs</div>
                                </li>
                                <li><a href="/article/2746.htm"
                                       title="github做webhooks:[2]php版本自动触发更新" target="_blank">github做webhooks:[2]php版本自动触发更新</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/github/1.htm">github</a><a class="tag" taget="_blank" href="/search/git/1.htm">git</a><a class="tag" taget="_blank" href="/search/webhooks/1.htm">webhooks</a>
                                    <div>上次已经说过了如何在github控制面板做查看url的返回信息了。这次就到了直接贴钩子代码的时候了。       
工具/原料  
 
   git   
   github   
     
方法/步骤  
 
       在github的setting里面的webhooks里把我们的url地址填进去。   
       钩子更新的代码如下: error_reportin</div>
                                </li>
                                <li><a href="/article/2873.htm"
                                       title="Eos开发常用表达式" target="_blank">Eos开发常用表达式</a>
                                    <span class="text-muted">蕃薯耀</span>
<a class="tag" taget="_blank" href="/search/Eos%E5%BC%80%E5%8F%91/1.htm">Eos开发</a><a class="tag" taget="_blank" href="/search/Eos%E5%85%A5%E9%97%A8/1.htm">Eos入门</a><a class="tag" taget="_blank" href="/search/Eos%E5%BC%80%E5%8F%91%E5%B8%B8%E7%94%A8%E8%A1%A8%E8%BE%BE%E5%BC%8F/1.htm">Eos开发常用表达式</a>
                                    <div>Eos开发常用表达式 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
蕃薯耀 2014年8月18日 15:03:35 星期一 
  
  
&</div>
                                </li>
                                <li><a href="/article/3000.htm"
                                       title="SpringSecurity3.X--SpEL 表达式" target="_blank">SpringSecurity3.X--SpEL 表达式</a>
                                    <span class="text-muted">hanqunfeng</span>
<a class="tag" taget="_blank" href="/search/SpringSecurity/1.htm">SpringSecurity</a>
                                    <div>使用 Spring 表达式语言配置访问控制,要实现这一功能的直接方式是在<http>配置元素上添加 use-expressions 属性: 
  
<http auto-config="true"  use-expressions="true"> 
这样就会在投票器中自动增加一个投票器:org.springframework</div>
                                </li>
                                <li><a href="/article/3127.htm"
                                       title="Redis vs Memcache" target="_blank">Redis vs Memcache</a>
                                    <span class="text-muted">IXHONG</span>
<a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a>
                                    <div>1. Redis中,并不是所有的数据都一直存储在内存中的,这是和Memcached相比一个最大的区别。 
2. Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。 
3. Redis支持数据的备份,即master-slave模式的数据备份。 
4. Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。 
Red</div>
                                </li>
                                <li><a href="/article/3254.htm"
                                       title="Python - 装饰器使用过程中的误区解读" target="_blank">Python - 装饰器使用过程中的误区解读</a>
                                    <span class="text-muted">kvhur</span>
<a class="tag" taget="_blank" href="/search/JavaScript/1.htm">JavaScript</a><a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a><a class="tag" taget="_blank" href="/search/html5/1.htm">html5</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a>
                                    <div>大家都知道装饰器是一个很著名的设计模式,经常被用于AOP(面向切面编程)的场景,较为经典的有插入日志,性能测试,事务处理,Web权限校验, Cache等。 
原文链接:http://www.gbtags.com/gb/share/5563.htm 
Python语言本身提供了装饰器语法(@),典型的装饰器实现如下:     
 
 @function_wrapper 
  de</div>
                                </li>
                                <li><a href="/article/3381.htm"
                                       title="架构师之mybatis-----update 带case when 针对多种情况更新" target="_blank">架构师之mybatis-----update 带case when 针对多种情况更新</a>
                                    <span class="text-muted">nannan408</span>
<a class="tag" taget="_blank" href="/search/case+when/1.htm">case when</a>
                                    <div>1.前言. 
   如题. 
2. 代码. 
  

	<update id="batchUpdate" parameterType="java.util.List">
			<foreach collection="list" item="list" index=&</div>
                                </li>
                                <li><a href="/article/3508.htm"
                                       title="Algorithm算法视频教程" target="_blank">Algorithm算法视频教程</a>
                                    <span class="text-muted">栏目记者</span>
<a class="tag" taget="_blank" href="/search/Algorithm/1.htm">Algorithm</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a>
                                    <div>课程:Algorithm算法视频教程 
 
百度网盘下载地址: http://pan.baidu.com/s/1qWFjjQW 密码: 2mji 
 
 
程序写的好不好,还得看算法屌不屌!Algorithm算法博大精深。 
 一、课程内容: 
课时1、算法的基本概念 + Sequential search 
课时2、Binary search 
课时3、Hash table 
课时4、Algor</div>
                                </li>
                                <li><a href="/article/3635.htm"
                                       title="C语言算法之冒泡排序" target="_blank">C语言算法之冒泡排序</a>
                                    <span class="text-muted">qiufeihu</span>
<a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a>
                                    <div>任意输入10个数字由小到大进行排序。 
代码: 
#include <stdio.h>
int main()
{
	int i,j,t,a[11];        /*定义变量及数组为基本类型*/
	for(i = 1;i < 11;i++){
		scanf("%d",&a[i]);     /*从键盘中输入10个数*/
	}
	for</div>
                                </li>
                                <li><a href="/article/3762.htm"
                                       title="JSP异常处理" target="_blank">JSP异常处理</a>
                                    <span class="text-muted">wyzuomumu</span>
<a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/jsp/1.htm">jsp</a>
                                    <div>1.在可能发生异常的网页中通过指令将HTTP请求转发给另一个专门处理异常的网页中: 
<%@ page errorPage="errors.jsp"%> 
  
2.在处理异常的网页中做如下声明: 
errors.jsp: 
<%@ page isErrorPage="true"%>,这样设置完后就可以在网页中直接访问exc</div>
                                </li>
                </ul>
            </div>
        </div>
    </div>

<div>
    <div class="container">
        <div class="indexes">
            <strong>按字母分类:</strong>
            <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a
                href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a
                href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a
                href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a
                href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a
                href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a
                href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a
                href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a
                href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a>
        </div>
    </div>
</div>
<footer id="footer" class="mb30 mt30">
    <div class="container">
        <div class="footBglm">
            <a target="_blank" href="/">首页</a> -
            <a target="_blank" href="/custom/about.htm">关于我们</a> -
            <a target="_blank" href="/search/Java/1.htm">站内搜索</a> -
            <a target="_blank" href="/sitemap.txt">Sitemap</a> -
            <a target="_blank" href="/custom/delete.htm">侵权投诉</a>
        </div>
        <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved.
<!--            <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>-->
        </div>
    </div>
</footer>
<!-- 代码高亮 -->
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/>
<script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script>





</body>

</html>