精华内容
下载资源
问答
  • python作为一门简单明了的语言,非常容易上手,语言层面不会太复杂,稍微有点难度的顶多就是装饰器、元类和少量函数式编程内容。要说学习的话,我觉得更多是一些编程方面通用的东西,比如:数据结构和算法、设计模式...

     

    来源:http://www.zhihu.com/collection/38815292?page=1

    1、如果使用python语言,需要学习哪些知识?
    python作为一门简单明了的语言,非常容易上手,语言层面不会太复杂,稍微有点难度的顶多就是装饰器、元类和少量函数式编程内容。要说学习的话,我觉得更多是一些编程方面通用的东西,比如:数据结构和算法、设计模式、操作系统、计算机网络之类的

    2、选择什么样的python框架开发,这个框架的优势?
    tornado,因为非阻塞io的原因,性能非常高,特别适合写后端API(App的后端应该都是rest风格的api),而且成熟稳定

    3、如何部署服务器?本地服务器调试,以及公网服务器部署?
    这个一两句说不清楚,涉及到运维、测试、开发诸多方面, 部署和测试推荐几个包:fabric、nose、unittest(python自带),版本管理推荐git,持续集成推荐使用docker+jenkins

    4、如果使用python框架开发移动后台服务,在开发源码内使用哪种框架?mvc还是其它的,比如我返回json数据,每次json对象最外层有一些相同的东西,该如何处理?
    MVC什么的,一般的框架都差不多的,tornado也是支持的,返回json有相同的东西,写个修饰器就完了

    5、python的后台服务最大能支持多大的pv量会严重影响用户体验性能?
    youtube、reddit、豆瓣、知乎这样的大流量网站都是python写的,我觉得你的App的规模不太可能遇到性能问题,即使有也应该不是python的问题,而是任何语言都会有问题。毕竟web后端不是计算密集型,而是io密集型的,python和其他语言的区别不会太大吧,大量的pv是可以靠堆服务器堆出来的,如果是计算量比较大的任务,你可以考虑用c或c++写

    6、如何兼顾 网页前端以及移动端 开发的后台?
    用python写的API,网页和移动端都是可以调用啊,让前端学学React,就可以轻松解决前后端分离这个问题(PS: facebook 就是后端php + 前端React,淘宝也有在用nodejs做前后端分离)

    7、有没用相关的案例,即用python开发的移动后台?有没有该问题的开源项目?
    这个应该比较少,App后端开源的不常见,而且大部分是rest风格的api,很多时候会涉及到自身的业务和敏感信息应该不会开源的吧(又不是bbs或者博客程序)

    展开全文
  • 请问该用怎么的框架或者组合。 1)比如 是否需要nginx等? 2)连接池怎么做呢? 只有python语法经验。大家帮忙给个方案谢谢
  • 神奇的Kivy,让Python快速开发移动app

    千次阅读 2019-10-24 19:36:53
    随着移动互联网的不断发展,手机、Pad等移动终端已经被普遍使用,充斥在人们的工作、学习和生活中,越来越多的程序...下面我们就看看用Python的Kivy模块是如何开发移动App应用的。 Kivy的安装。与Python的其他模块...

    随着移动互联网的不断发展,手机、Pad等移动终端已经被普遍使用,充斥在人们的工作、学习和生活中,越来越多的程序都转向移动终端,各类app应用相拥而至。

    Kivy作为Python的Android和IOS的app应用开发利器,有着跨平台开发优势,很快得到了普遍运用,并逐渐占据了核心地位。下面我们就看看用Python的Kivy模块是如何开发移动App应用的。

    Kivy的安装。与Python的其他模块安装一样,使用如下方式进行Kivy模块的安装。

    pip install kivy
    

    安装完成后,在python运行环境中输入import kivy,如果出现下图中红色字体部分的提示,那么恭喜你,你的kivy模块已经安装成功。

     

    虽然kivy安装成功,但是kivy的运行需要依赖库,我们还需要做如下操作:

    pip install kivy.deps.sdl2
    pip install docutils pygments pypiwin32 kivy.deps.sdl2 kivy.deps.glew
    

    把上面的两个kivy依赖库安装完成后,试着运行下面的代码,就会出现一个窗口,至此,kivy模块已经成功安装完成,就可以进行下一步的移动app开发了。

    from kivy.app import App
    from kivy.uix.label import Label #导入标签类
    
    class TestApp(App): 
     def build(self): 
     return Label(text='Hello Kivy!') #定义标签文本
     
    TestApp().run()
    

     

    关于kivy,请参考相关文档,学习和掌握相关知识。

    文章转自:https://www.toutiao.com/c/user/20360618017/#mid=1592454024993796
    如有侵权,请联系小编删除!

    展开全文
  • python开发移动应用 Before the development of any software or a mobile app, the first thing that comes in mind is- which programming language is the best for this app. Yes! 在开发任何软件或移动应用...

    python开发移动应用

    image

    Before the development of any software or a mobile app, the first thing that comes in mind is- which programming language is the best for this app. Yes!

    在开发任何软件或移动应用程序之前,首先要想到的是-哪种编程语言最适合该应用程序。 是!

    为特定的移动应用程序开发选择最佳的编程语言非常重要 ( It is really important to choose the best programming language for particular mobile app development)

    .

    So, among various programming languages, let’s throw light on the

    因此,在各种编程语言中,让我们来看看

    Python在移动应用程序开发中的重要性 (significance of Python in Mobile app development)

    or it could also be said that why Python is the best language for mobile app development?

    还是可以说为什么Python是移动应用程序开发的最佳语言?

    Before that, let’s have a look at the stat where according to statista.com, Python remains the most popular programming language in

    在此之前,让我们看一下统计资料,根据statista.com,Python仍然是Python中最受欢迎的编程语言

    2020年 (2020)

    , according to GitHub and Google Trends, surpassing longstanding Java and JavaScript in popularity.

    ,根据GitHub和Google Trends的说法,其流行程度超过了长期以来的Java和JavaScript。

    Python was also the biggest gainer in the Tiobe index of the popularity of programming languages in the year

    在这一年,Python还是Tiobe指数中编程语言受欢迎程度的最大赢家

    2018年 (2018)

    , rising by

    ,上升

    3.62% (3.62%)

    points from

    来自的点

    2018年1月至2019年1月 ( January 2018 to January 2019)

    , with a rating of approx.

    ,评分约为。

    8.2% (8.2%)

    for this month.

    这个月

    image

    Source: DZone

    资料来源: DZone



    为什么选择Python for Mobile Apps? (Why Choose Python For Mobile Apps?)

    Python is indeed becoming one of the top preferences for mobile app development. Python can be used for the development of

    Python确实已成为移动应用程序开发的首选之一。 Python可用于开发

    蜜蜂 ( APIs)

    of mobile applications. Mobile app developers prefer to build mobile applications with the help of this programming language as this language is capable of running multiple major operating systems.

    移动应用程序。 移动应用程序开发人员倾向于使用此编程语言来构建移动应用程序,因为该语言能够运行多个主要操作系统。

    The use of Python language is made along with the framework in order to develop mobile apps because it helps the users to maintain the

    为了开发移动应用,Python和框架一起使用了Python语言,因为它可以帮助用户维护

    数据库条目 (database entries)

    . Apart from this, mobile app developers can perform other functions also at the same time.

    。 除此之外,移动应用程序开发人员还可以同时执行其他功能。

    Various kinds of mobile app development tools which can be used by the developers easily. Python is mainly used for developing android based applications. As the coding structure of python is

    开发人员可以轻松使用的各种移动应用程序开发工具。 Python主要用于开发基于android的应用程序。 由于python的编码结构是

    好简单 (very easy)

    and this is one of the major reasons why Python developers prefer to use

    这是Python开发人员偏爱使用的主要原因之一

    Apart from this, the process of scripting in Python is very much easy. Python is one of the most suitable choices if you are looking for kind of a faster mobile response. Additionally, it supports cross-platform capabilities that is why it is considered a front-runner for cross-platform applications. So this factor is one of the most important in Python for mobile app development.

    除此之外,使用Python编写脚本的过程非常简单。 如果您正在寻找一种更快的移动响应,Python是最合适的选择之一。 此外,它支持跨平台功能,这就是为什么它被视为跨平台应用程序的领先者。 因此,此因素是Python中用于移动应用程序开发的最重要因素之一。

    So, it could be said that you can develop an app that can develop on different platforms just by using a

    因此,可以说您可以开发一个可以在不同平台上开发的应用程序,只需使用

    一小行代码 (small line of codes)

    . You are highly suggested to develop a multi-thread app with the help of Python instead of other languages.

    。 强烈建议您借助Python而不是其他语言来开发多线程应用程序。

    It is seen that Python is one of the most readable and simplest languages in the world right now. This is one of the highly-used programming languages among the developers in order to create mobile applications and programs. In fact, in comparison to other languages, Python is the simplest language.

    可以看出,Python是目前世界上最易读和最简单的语言之一。 这是开发人员中用来创建移动应用程序和程序的一种常用编程语言。 实际上,与其他语言相比,Python是最简单的语言。

    It is really easy to implement this programming language as well as the language has a very

    实现这种编程语言真的很容易,而且该语言具有

    干净的结构 (clean structure)

    as compared to other languages. This is why developers are not required to do lengthy coding. Apart from this, this programming language helps in writing faster and easier application code.

    与其他语言相比 这就是为什么不需要开发人员进行冗长的编码的原因。 除此之外,这种编程语言还有助于编写更快,更容易的应用程序代码。



    最佳和最重要的移动应用Python框架 (The best and the most important Python framework for Mobile apps)

    基维 (Kivy)

    image

    Kivy is one of the most suitable frameworks for building mobile applications. This framework helps in completing the mobile development process very convenient and fast. This has become the center of focus since it came into light. It is an open-source Python library that helps the mobile app developers to develop fast-paced applications.

    Kivy是构建移动应用程序的最合适的框架之一。 该框架有助于非常方便快捷地完成移动开发过程。 自问世以来,它已成为关注的焦点。 它是一个开放源代码的Python库,可帮助移动应用程序开发人员开发快节奏的应用程序。

    This is one of the most python-powered graphical toolkits among the most popular frameworks. This toolkit helps in making very creative, intuitive, and very engaging user interfaces. That is why it has become one of the best choices for app developers. Apart from this, these frameworks help in adding the most appealing, multi-touch support.

    这是最流行的框架中最受python驱动的图形工具包之一。 该工具包有助于创建非常有创意,直观且引人入胜的用户界面。 这就是为什么它已成为应用程序开发人员的最佳选择之一的原因。 除此之外,这些框架还有助于添加最具吸引力的多点触控支持。

    Kivy的一些流行用例是粒子熊猫,Processcraft和TicTacTouch。 (Some of the popular use-cases of Kivy are Particle Panda, Processcraft, TicTacTouch.)



    可以使用Python构建的应用程序类型 (Types of Applications that can be built using Python)

    区块链应用 ( Blockchain Applications)

    As everyone knows that Blockchain has become one of the hottest trends recently. According to the developers, blockchain development is not that much easy as others think. But with the help of Python, this blockchain development process has become very easy as with the help of Flask, a python’s framework, developers can use HTTP requests to interact with their blockchain over the network and create endpoints for distinct functions of blockchain. With the help of Python in Blockchain apart from this, it will help the developers to run scripts on multiple machines for developing a decentralized network.

    众所周知,区块链已成为最近最热门的趋势之一。 根据开发人员的说法,区块链开发并不像其他人想象的那么容易。 但是在Python的帮助下,就像在python框架Flask的帮助下一样,此区块链开发过程变得非常容易,开发人员可以使用HTTP请求通过网络与他们的区块链进行交互,并为区块链的不同功能创建端点。 除此之外,借助Python在区块链中的帮助,它将帮助开发人员在多台机器上运行脚本以开发去中心化网络。

    游戏应用 (Gaming Apps)

    image

    Python is indeed one of the most advanced programming languages which have developed amazing modules for gaming mobile apps. As it is open-source, so it is very easy for the developers to adopt it without making any kind of investments.

    Python确实是最先进的编程语言之一,它已经为游戏移动应用程序开发了惊人的模块。 由于它是开源的,因此开发人员无需进行任何投资即可轻松采用它。

    For gaming apps, it highly suggested to you that you should go for Python only if in case you are looking for creating a unique mobile app.

    对于游戏应用程序,强烈建议您仅在需要创建独特的移动应用程序的情况下才应使用Python。

    商业应用 (Business Applications)

    As python offers practical agility so it is capable of developing multiple numbers of mobile applications. This is why we use Python in making ERP and E-commerce App Development.

    由于python提供了实用的敏捷性,因此它能够开发多个移动应用程序。 这就是为什么我们使用Python进行ERP和电子商务应用程序开发的原因。

    Have you heard about an Odoo? Well, it is basically a management software that is developed by Python with the help of which we can create a variety of business apps forming a suite of business management apps.

    您听说过Odoo吗? 嗯,它基本上是由Python开发的管理软件,借助它我们可以创建各种业务管理应用程序,形成一套业务管理应用程序。

    It is really easy to build amazing business applications with Python. This is the reason why most of the businessmen prefer to use Python for business application development.\

    使用Python构建出色的业务应用程序确实很容易。 这就是为什么大多数商人更喜欢使用Python进行业务应用程序开发的原因。\



    最后的话 (Final Words)

    I hope I am somehow successful in making you aware of the power of python in mobile apps. I wish after going through the whole blog, you came to know why and how python is contributing to Mobile app development.

    希望我能以某种方式使您意识到python在移动应用程序中的强大功能。 我希望在浏览整个博客后,您知道python为什么以及如何为移动应用程序开发做出了贡献。

    Whether you are looking for building a blockchain-based application or it is a gaming application, you are suggested to contact a Python development company as only the Python service will make your project efficient and away from complexity.

    无论您是要构建基于区块链的应用程序还是游戏应用程序,都建议您与Python开发公司联系,因为只有Python服务才能使您的项目高效且摆脱复杂性。

    翻译自: https://habr.com/en/post/500464/

    python开发移动应用

    展开全文
  • Python开发App实战(一)-Kivy入门

    千次阅读 多人点赞 2020-11-09 15:25:05
    本次《Python开发App实战》总共分为4个部分,第一部分是Kivy的入门教程,第二部分是基于Kivy实现一个具有计时器和秒表功能的表,第三部分是基于Kivy实现一个科学计算器,第四部分是Kivy向移动设备的打包移植。...

    写在最前:

    开发App的主流语言中应该是Java,但是苦于没有学过Java但目前又没那么多时间重新学,因此就想着用已经入门的Python开发两个App练手,学习的过程中看过很多资料,也踩过很多坑,于是就想着将自己的经验写出来分享给大家,希望大家可以少踩些坑,更顺利地学习。本次《Python开发App实战》总共分为4个部分,第一部分是Kivy的入门教程,第二部分是基于Kivy实现一个具有计时器和秒表功能的表,第三部分是基于Kivy实现一个科学计算器,第四部分是Kivy向移动设备的打包移植。前三个部分博主是已经完成的,虽然第四部分相对简单,但是比较方便的一种方法是使用Kivy提供的Buildozer打包,由于博主研究室的网络最近处于瘫痪状态,因此唯一一台ubuntu设备无法使用,博主在自己的macbook上打包了好多次也因为一些不知原因的问题没有成功,在ubuntu的虚拟机上打包又提示内存空间不足,因此想等到研究室网络恢复,打包移植成功后再更新第四部分。

    本次开发的环境如下:

    Python: 3.6.6
    Kivy: 1.11.1
    OS: MacOS(Ubuntu自然ok)
    IDE:Pycharm EDU
    

    了解Kivy

    好了,开始正题。
    Kivy于2011年初首次发布。该跨平台的Python框架可以部署到Windows,Mac,Linux和树莓派上。它除了常规的键盘和鼠标输入外,还支持多点触控事件。Kivy甚至还支持其图形的GPU加速,因为它们是用OpenGL ES2构建的。Kivy使用的是MIT许可证,因此你可以将该库用于免费和商业软件。

    Kivy不会尝试使用本机控件或小部件。它的所有小部件都是定制的,因此用Kivy开发的App在所有平台上的GUI都是一样的,不过缺点可能就是你开发的App的GUI将与用户的本机应用程序不同。

    安装Kivy

    Kivy具有许多依赖关系,建议将其安装到Python虚拟环境中。没有用过虚拟环境的千万不要劝退,这里简单的介绍一下虚拟环境:

    虚拟环境可以理解于开辟出来的专用的一块环境,它独立于你系统的环境,因为在实际项目中可以根据需求或者库不同需要不同版本的依赖关系,比如有的项目要用Python2,有的要用Python3,有的用Tensorflow1.10,有的用Tensorflow2.0。使用虚拟环境就可以将每个项目完美地独立起来,避免的每次需要把系统整体环境的版本改来改去。用过Pycharm的同学可以理解为软件设置里的project interpreter,你可能每次创建一个工程都会重新安装依赖,这其实就是所谓的虚拟环境。

    如果你只是用来做项目而不打算深入了解它,你可以使用Python的内置venv库或virtualenv包。本次教程就使用venv库实现。

    先导航到你创建项目的目录下,在terminal输入以下指令创建虚拟环境:

    python3 -m venv my_kivy_project
    

    这样就创建成功了一个my_kivy_project的文件夹并且在目录下创建了虚拟环境。
    接下来用以下指令来激活环境:

    source bin/activate
    

    激活之后你terminal应该变成了这样:

    (my_kivy_project) 你的计算机名:my_kivy_project 你的用户名$
    

    不用的时候输入deactivate退出即可。

    接下来在激活后的虚拟环境中安装Kivy,如果你已经安装过pip即可以输入以下指令,否则你需要先安装pip:

    python -m pip install kivy
    

    如果顺利安装完成后你就可以输入pip list,然后看到其中有kivy了。

    用Kivy的Label实现Hello World

    大家学语言之前都是用Hello World开始的吧,那我们今天入门Kivy也从Hello World开始。
    创建一个main.py或者其他的什么命名,在里面输入以下程序你就可以看到Hello World了,你可以使用Pycharm这个IDE来编程,在然后在虚拟环境中python main.py来运行。

    from kivy.app import App
    from kivy.uix.label import Label
    
    class mainApp(App):
        def build(self):
            label = Label(text='Hello World', size_hint=(.5, .5),
            pos_hint={'center_x': .5, 'center_y': .5})
    
            return label
    
    if __name__ == '__main__':
        app = mainApp()
        app.run()
    

    运行完.py文件后,如果没有出现错误你应该可以看到这个界面:

    每个Kivy应用程序都需要继承App类和重写build()函数。在这里,你可以编写自己的UI代码或调用定义UI代码的其他函数。这次创建一个Label窗口小部件,并通过定义textsize_hintpos_hint的数值告诉Kivy创建小部件时要使用的比例和部件的位置。其中size_hint两个数字的含义是:

    第一个数字是x大小提示,指的是控件的宽度。
    第二个数字是y大小提示,表示控件的高度。

    这两个数字范围为0到1。两个提示的缺省值都是1。
    pos_hint两个值的意思可以参考size_hint,上面的代码中的两个.5是将label这个部件(widget)在x和y轴上居中。

    布置UI

    Kivy提供了很多的部件,在接下来的项目中比较常用到的有BoxLayoutTextInputButton,还有本次用到的Label等,大家可以根据自己的需求设计UI,然后添加部件,在官网上都可以看到相应的部件函数,如Layout里除了BoxLayout还有AnchorLayoutFloatLayout等,大家可以去用用试试看。
    接下来我们就用之后的开发中用的最频繁的BoxLayout和Button来给大家做一个简单的UI演示。

    尝试以下的代码

    from kivy.app import App
    from kivy.uix.button import Button
    from kivy.uix.boxlayout import BoxLayout
    
    class boxLayoutExample(App):
        def build(self):
            layout = BoxLayout(orientation='vertical', spacing=15, padding=10) #创建Layout
            buttons = [str(i) for i in range(7)] #设置按键的标签
            for i in range(7):
                button = Button(text=buttons[i], size_hint=(.5, .5),
                                pos_hint={"center_x": .5, "center_y": .5})
                layout.add_widget(button) #将按键加入到Layout中
            return layout
    
    
    if __name__ == "__main__":
        app = boxLayoutExample()
        app.run()
    

    如果运行之后没有错的话你将看到如下的界面

    参考Hello World部分的代码解释以及本次代码中的注释我们大概可以理解,首先继承App类然后重写build()函数,在函数中创建一个BoxLayout,然后以字符的形式为按钮创建标签,接着用一个循环将按钮添加到Layout中即可。可以在出现的界面上点一下0-6的数字,可以发现确实是按键,可以按下可以弹起。

    需要注意的是创建BoxLayout的时候,里面用到的orientation,spacing,padding的局部变量,它们的含义如下:

    • padding:可以通过以下三种方式之一指定Layout及其子元素之间的填充像素:
      1.四参数列表: [padding_left,padding_top,padding_right,padding_bottom]
      2.两个参数的列表: [padding_horizontal,padding_vertical]
      3.单个参数: padding=10
    • spacing:可以使用此参数在子窗口小部件之间添加空间。
    • orientation:可以更改默认orientation的BoxLayout从水平到垂直。

    其他BoxLayout的参数也可以在官网上看到其含义和使用方法,官方手册是很好的工具,大家可以好好利用,顺便锻炼一下英语。

    添加事件

    和大多数GUI工具包一样,Kivy主要基于事件,它可以响应用户的按键,鼠标事件和触摸事件,此外Kivy还具有时钟的事件。

    Kivy也有Properties与之搭配的概念EventDispatcher。属性可帮助您进行验证检查。它们还使您可以在小部件更改大小或位置时触发事件。

    承接上面的按键的例子,我们可以通过定义on_press_button()函数来定义按键后的回调函数,然后用bind()函数来将该相应的事件绑定到定义的回调函数上。我们就来定义一个回调函数,用来打印出是哪个按键被按下,绑定的事件的相应的按键被按下,添加绑定事件和回调函数的代码段如下所示:

    from kivy.app import App
    from kivy.uix.button import Button
    from kivy.uix.boxlayout import BoxLayout
    
    class boxLayoutExample(App):
        def build(self):
            layout = BoxLayout(orientation='vertical', spacing=15, padding=10) #创建Layout
            buttons = [str(i) for i in range(7)] #设置按键的标签
            for i in range(7):
                button = Button(text=buttons[i], size_hint=(.5, .5),
                                pos_hint={"center_x": .5, "center_y": .5})
                button.bind(on_press=self.on_press_button)
                layout.add_widget(button) #将按键加入到Layout中
            return layout
    
        def on_press_button(self, instance):
                print('你按下了{}键'.format(instance.text))
    
    
    if __name__ == "__main__":
        app = boxLayoutExample()
        app.run()
    
    

    运行完后出现的界面跟上面UI的例子相同,因为我们没有修改UI的布置,不同的是因为按下按键后触发了on_press事件,该事件绑定了我们定义的回调函数,因此回调函数中的代码段就被执行,就可以在terminal看到你按下了*键的提示。

    KV语言

    布局UI不仅可以像上文介绍的那样实现,Kivy还提供了一种称为KV的设计语言,你可以用KV语言实现UI布局。不要看到是一门新的语言就劝退,博主一开始就被劝退了,但实际上学起来还是很快的,因为它虽然是一个语言,但毕竟用来设计UI界面的,所以入门也比较简单。

    使用KV语言来实现UI布局可以创建一个名为***.kv的文档实现,也可以在原来的.py文件中添加kivy.bulid.Builder.load_string()函数,在该函数中添加代码段。完整的程序如下:

    from kivy.app import App
    from kivy.uix.button import Button
    from kivy.uix.boxlayout import BoxLayout
    from kivy.lang import Builder
    
    Builder.load_string('''
    <myLayout>
        BoxLayout:
            orientation:'vertical'
            spacing:15
            padding:38
            Button:
                id:0
                text:'0'
                size_hint:(.5, .5)
                pos_hint:{"center_x": .5, "center_y": .5}
                on_press:root.on_press_button(self.text)
            Button:
                id:1
                text:'1'
                size_hint:(.5, .5)
                pos_hint:{"center_x": .5, "center_y": .5}            
                on_press:root.on_press_button(self.text)
            Button:
                id:2
                text:'2'
                size_hint:(.5, .5)
                pos_hint:{"center_x": .5, "center_y": .5}            
                on_press:root.on_press_button(self.text)
            Button:
                id:3
                text:'3'
                size_hint:(.5, .5)
                pos_hint:{"center_x": .5, "center_y": .5}            
                on_press:root.on_press_button(self.text)
            Button:
                id:4
                text:'4'
                size_hint:(.5, .5)
                pos_hint:{"center_x": .5, "center_y": .5}            
                on_press:root.on_press_button(self.text)   
            Button:
                id:5
                text:'5'
                size_hint:(.5, .5)
                pos_hint:{"center_x": .5, "center_y": .5}            
                on_press:root.on_press_button(self.text)
            Button:
                id:6
                text:'6'
                size_hint:(.5, .5)
                pos_hint:{"center_x": .5, "center_y": .5}            
                on_press:root.on_press_button(self.text)                                 
    ''')
    class myLayout(BoxLayout):
        def __init__(self, **kwargs):
            super(myLayout, self).__init__(**kwargs)
    
        def on_press_button(self, instance):
                print('你按下了{}键'.format(instance))
    
    class boxLayoutExample(App):
        def build(self):
            
            return myLayout()
    

    用以上的代码段与之前不用KV语言的代码段的UI和功能完全相同,大家可以运行一下试试。需要注意创建的myLayout类中继承了BoxLayout,并且在主App类的build()函数中要返回myLayout类,这样kivy才知道布置的UI是哪个。

    细心的同学可以发现,在KV语言中定义的按钮中添加了id的属性,有了这个属性后就可以通过self.ids['id']来对相应的部件进行操作,虽然本次的例子中没有用到,但后面的例子会用到,在此先做个铺垫。用了KV语言的好处就是UI布置起来更直观,更符合易读,缺点就是很多功能相同的代码段重复出现,虽然可以复制粘贴,但毕竟还是体力活。在实际应用中大家可以根据自己的需求选择用或者不用KV语言。

    有了以上这些基础加上学会使用官方手册,就应该已经入门Kivy了,可以根据自己的需求来实现APP的UI了。入门篇到此结束,下一篇开始我们就开始APP的开发实战!

    写在最后

    如果有哪里理解错的地方欢迎大家留言交流,如需转载请标明出处。

    如果你没看懂一定是我讲的不好,欢迎留言,我继续努力。

    手工码字码图码代码,如果有帮助到你的话留个赞吧,谢谢。

    以上。

    展开全文
  • 移动开发中,为了兼容不同版本、系统、型号的机型,进行页面布局时往往要耗费大量的时间。在 Kivy 中,为我们提供了一组非常灵活的布局方式,开发者只需要计算和分配窗口小部件的位置即可。Kivy中主要有以下几种...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • Appium是一个移动APP(手机应用)自动化工具,其作用有以下几点: 自动化完成一些重复性的任务:如微信客服机器人 爬虫,通过手机自动化爬取信息 自动化测试 Appium自动化方案的特点: 开源免费 支持多个平台:...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • Hybrid App(混合模式移动应用)是指介于web-app、native-app这两者之间的app兼具Native App良好用户交互体验的优势和Web App跨平台开发的优势 HybridAppTest.py: import unittestfrom time import sleepfrom ...
  • 移动APP环境配置

    2018-06-13 09:40:42
    移动App环境配置 使用Ionic开发需要安装的基本工具 Node Git JAVA JDK Android SDK Ionic cordova react native 需要以下文件 python  Visual Studio 2015 (当你安装失败就需要c++环境) 如果没有安卓设备...
  • android-security-awesome android安全相关资源的集合。 工具学术/研究/出版物/书籍漏洞利用/漏洞/错误...NowSecure Lab自动化-用于对Android和iOS移动应用程序进行安全性测试的移动应用程序企业工具。 实验室自动功能
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 实现小程序点餐 后台轮询获取订单 支持餐桌码点餐 使用uni-app开发手机app 控制机器人移动 支持添加mark节点 支持添加机器人 需要配置小程序APPID等信息在 后端服务 config.py
  • 它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。 如果opencv安装出问题,可能需要检查android studio的ndk...
  • 2019独角兽企业重金招聘Python工程师标准>>> ...
  • 移动App测试项

    2019-04-02 14:50:17
    1,python认知 2,Django入门 3,Django视图 4,Django模型 5,Django模板 6,Django测试 7,接口相关概念 8,开发web接口 9,接口测试工具 10,接口自动化测试框 11,接口的安全机制 12,Web Services 13,REST 14...
  • HTML5+开发移动App详细介绍请看。 命令格式 python genwgtu.py <old> <new> [ -o out.wgtu] 生成步骤 生成两个不同版本的资源包如 app-1.0.0.wgt和app-1.1.0.wgt(官方资料:) 执行gen-wgtu生成差量资源包,如下...
  • 使用Flutter前端和Python Flask后端创建的全栈移动天气应用程序,可从OpenWeatherMap API( )中获取预报数据,并从WeatherBit( )中获取空气质量数据 )。 入门 项目仍在开发中...后续的完整文档。敬请关注! 致谢...
  • Appcelerator的Titanium开发平台使开发者可以通过HTML、PHP、JavaScript、Ruby、Python等Web编程语言开发手机、平板和桌面的原生App。其优势在于它可以让用户轻松地访问超过300个API以及定位信息。 此外,...
  • 移动APP测试要点总结

    2018-05-31 10:59:00
    ***微信扫一扫,关注“python测试开发圈”,了解更多测试教程!*** 转载于:https://www.cnblogs.com/guanfuchang/p/9115462.html

空空如也

空空如也

1 2 3 4 5 ... 14
收藏数 280
精华内容 112
关键字:

python开发移动app

python 订阅