大家好我是费老师,在Python生态中,有很多以Python为主要开发语言,实现网页应用开发的框架,其中最为知名的有Dashfletstreamlitgradionicegui等。

如果综合考虑流行度开发效率开发自由度相关生态成熟度可拓展性安全性等各方面的能力,Dash是其中天花板级别的存在,这也是Dash得以在全世界范围内,被广大公司、高校及政府机构选中,用于快速开发构建各种生产级别平台应用的重要原因。

其中相关生态成熟度就具体体现在Dash的组件库丰富程度上,今天的文章中要给大家介绍的fac(全称feffery-antd-components,官网文档地址:https://fac.feffery.tech )就是一套非常成熟的Dash网页开发通用组件库,累计下载量超过25万次,底层基于非常著名的前端框架Ant Design,通过大量的二次开发使得我们可以通过纯Python的方式,来调用各种丰富的组件功能,构建我们心仪的Dash网页应用。

fac刚发布了其0.3.0正式版本,基于最新的Ant Design 5.x版本进行全面升级,集成了涵盖通用布局导航数据录入数据展示反馈其他等七大类功能的多达109个组件,足以轻松覆盖各类型常用应用功能需求。

Dashfac的安装使用非常方便,推荐大家养成好习惯,在单独的Python虚拟环境中进行Dash应用项目开发工作,以condamamba为例(conda用户将命令中的mamba换成conda即可):

  • 创建示例虚拟环境并激活,Python版本在主流的3.83.12之间均可
mamba create -n my-dash-env python=3.9 -y

mamba activate my-dash-env
  • 使用pip直接安装fac,会自动安装其他Dash依赖
pip install feffery-antd-components

OK,我们的环境这样就准备好了,非常的简单方便~,接下来就可以在你习惯的ide里开始编写Dash应用了。

下面是一个最简单的Dash应用示例,你可以将下面的代码直接粘贴到你的ide里,再在终端执行python app.py命令启动它,Dash默认会在本机的http://127.0.0.1:8050地址启动我们的应用,直接在浏览器中访问即可看到下面的效果:

import dash
import feffery_antd_components as fac app = dash.Dash(__name__) app.layout = fac.AntdAlert(
type="info",
showIcon=True,
message="你好,Dash!",
description=f"Dash版本:{dash.__version__},fac版本:{fac.__version__}",
) if __name__ == "__main__":
app.run()

其中fac.AntdAlert就是fac中的警告提示组件,对应的文档地址:https://fac.feffery.tech/AntdAlert ,每个组件都有其对应各自不同功能的参数,譬如上面例子中,就通过参数info设置了提示类型,通过参数showIcon设置图标显示,通过参数message设置了提示信息内容,通过参数description设置了描述信息内容,这些你都可以在文档网站中查看到详细的介绍及示例演示:

熟悉fac的老用户应该知道,其文档网站是完全基于Dash开发的,且开源了完整的源码地址( https://github.com/CNFeffery/feffery-antd-docs ),随着本次fac的大版本升级,文档网站也进行了大范围的更新重构,增加了很多实用功能,方便大家更加便捷高效的查询文档,感谢在此过程中参与源码贡献的insistence琅主数据猿RiggleDreamGery等同学。

篇幅有限,本文针对fac中的超多新功能不多做介绍,今后将持续为大家分享有关Dashfac及相关生态的各种干货内容,欢迎持续关注️。

Python网页应用开发神器fac 0.3.0全新版本发布的更多相关文章

  1. python网页爬虫开发之四-串行爬虫代码示例

    实现功能:代理.限速.深度.反爬 import re import queue import urllib.parse import urllib.robotparser import time fr ...

  2. Python 3.9.0 首个迭代版本发布了

    Python 3.9.0 alpha 1 发布了,这是 3.8 之后的首个 3.9 系列版本. ! 官方没有介绍新特性,也没有添加新模块,但是以下模块有所改进: ast asyncio curses ...

  3. Percona Server 5.6.13-61.0 首个 GA 版本发布

    Percona Server 5.6 的首个 GA 版本发布了,版本号是 5.6.13-61.0 ,该版本基于 MySQL 5.6.13 改进内容包括: New Features: Percona S ...

  4. python网页爬虫开发之一

    1.beautifulsoap4 和 scrapy解析和下载网页的代码区别 bs可以离线解释html文件,但是获取html文件是由用户的其他行为的定义的,比如urllib或者request : 而sc ...

  5. python网页爬虫开发之三

    1.抓取目录页后用lxml进行页面解析,获取抓取列表 python3.6 urlparse模块变为urllib.parse 2.Python中有一个专门生成各类假数据的库:Faker 3.python ...

  6. python网页爬虫开发之七-多线程爬虫示例01

    from urllib.request import quote import urllib.request from bs4 import BeautifulSoup import re impor ...

  7. python网页爬虫开发之六-Selenium使用

    chromedriver禁用图片,禁用js,切换UA selenium 模拟chrome浏览器,此时就是一个真实的浏览器,一个浏览器该加载的该渲染的它都加载都渲染,所以爬取网页的速度很慢.如果可以不加 ...

  8. python网页爬虫开发之五-反爬

    1.头信息检查是否频繁相同 随机产生一个headers, #user_agent 集合 user_agent_list = [  'Mozilla/5.0 (Windows NT 6.1; WOW64 ...

  9. JeeWx全新版本发布!捷微二代微信活动平台1.0发布!活动插件持续开源更新!

    JeeWx捷微二代微信活动平台 (专业微信营销活动平台,活动插件持续更新ing~)    终于等到你!还好我没放弃! 在团队持续多年的努力下,Jeewx微信管家和H5活动平台不断更新迭代,积累了许许多 ...

  10. API开发管理平台eoLinker AMS 4.1版本发布:加入聚合空间,发布AMS专业版等

    eoLinker AMS是集API文档管理.API自动化测试.开发协作三位一体的综合API开发管理平台,是中国最大的在线API管理平台. eoLinker AMS 4.1更新内容: 1.新增" ...

随机推荐

  1. Ansible的常用模块

    目录 ansible常用模块 1. file模块 1.1 file模块的选项 1.2 file模块的使用 1.2.1 使用file模块在远程主机创建文件 1.2.2 创建目录 1.2.3 删除文件/目 ...

  2. VScode连接服务器不用每次都输入密码

    VScode连接服务器不用每次都输入密码. 用git或xcode的ssh keygen生成一组不带密码的 rsa2048 的公钥id_rsa_nopasswd.pub和私钥id_rsa_nopassw ...

  3. Stirling-PDF 安装和使用教程

    PDF (便携式文档格式) 目前已经成为了文档交换和存储的标准.然而,找到一个功能全面.安全可靠.且完全本地化的 PDF 处理工具并不容易.很多在线 PDF 工具存在隐私和安全风险,而桌面软件往往价格 ...

  4. todo高通Android UEFI中的LCD分析(1):启动流程分析

    # 高通Android UEFI中的LCD分析(1):启动流程 背景 之前学习的lk阶段点亮LCD的流程算是比较经典,但是高通已经推出了很多种基于UEFI方案的启动架构. 所以需要对这块比较新的技术进 ...

  5. JSON 的了解?

    1., JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.(为了和其他语言进行交互)2. 数据格式简单, 易于读写, 占用带宽小{'age':'12', ' ...

  6. Mac Mysql初始化密码

    初始化密码 step1 苹果->系统偏好设置->最下面一行上点击mysql图标, 在弹出页面中 关闭mysql服务(点击stop mysql server) step2 登录终端:comm ...

  7. 自己理解的TCP三次握手

    ### TCP 三次握手过程是怎样的? TCP的建立连接是通过三次握手来进行的.三次握手的过程如下图: 说实话这个很好理解,我称之为N字型 首先我们理解到建立连接是一个虚的概念了对吧?那么我们来设计一 ...

  8. Error: Dynamic require of "path" is not supported

    failed to load config from D:\BaiduSyncdisk\vue3\sys-manager\vite.config.jserror when starting dev s ...

  9. oeasy教您玩转vim - 73 - # 映射map

    ​ 映射map 回忆上次缩写的细节 这次了解到了:abbrivate缩写 可以定义缩写 :ab o1z oeasy 这里面还可以包括方向键.回车键之类的东西 可以定义到指定的模式 iab cab 查看 ...

  10. 【JavaScript高级03】执行上下文和执行上下文栈

    1,函数提升和变量提升 编写以下代码: var a = 3 function fn () { console.log(a) var a = 4 } fn() 上面的JavaScript代码执行结果为一 ...