利用TypeScript构建优雅的React Native项目
[TOC]
概述文章参考:https://juejin.im/post/5cd978ef6fb9a031fe3be6bd
模板参考:https://github.com/react-native-community/react-native-template-typescript/blob/master/template/babel.config.js
https://blog.csdn.net/dick3741/article/details/91379421
文章参考:https://juejin.im/post/5ce0135a5188251ce226416d
官方文档:https://facebook.github.io/react-native/blog/2018/05/07/using-typescript-with-react-native
官方文档:https://reactnative.cn/docs/typescript/
集成方案目前RN 集成 TypeScript 有两个方案:
方案一: 借助第三方编译插件react-native-typescript-tran ...
Python之面向对象编程
[TOC]
概述文章参考:https://www.liaoxuefeng.com/wiki/1016959663602400/1017495723838528
面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数。
面向过程的程序设计把计算机程序视为一系列的命令集合,即一组函数的顺序执行。为了简化程序设计,面向过程把函数继续切分为子函数,即把大块函数通过切割成小块函数来降低系统的复杂度。
而面向对象的程序设计把计算机程序视为一组对象的集合,而每个对象都可以接收其他对象发过来的消息,并处理这些消息,计算机程序的执行就是一系列消息在各个对象之间传递。
在Python中,所有数据类型都可以视为对象,当然也可以自定义对象。自定义的对象数据类型就是面向对象中的类(Class)的概念。
我们以一个例子来说明面向过程和面向对象在程序流程上的不同之处。
假设我们要处理学生的成绩表,为了表示一个学生的成绩,面向过程的程序可以用一个dict表示:
123std1 = { ...
Python之继承和多态
[TOC]
概述在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类、父类或超类(Base class、Super class)。
比如,我们已经编写了一个名为Animal的class,有一个run()方法可以直接打印:
123class Animal(object): def run(self): print('Animal is running...')
当我们需要编写Dog和Cat类时,就可以直接从Animal类继承:
12345class Dog(Animal): passclass Cat(Animal): pass
对于Dog来说,Animal就是它的父类,对于Animal来说,Dog就是它的子类。Cat和Dog类似。
继承有什么好处?最大的好处是子类获得了父类的全部功能。由于Animial实现了run()方法,因此,Dog和Cat作为它的子类,什么事也没干,就自动拥有了run()方法:
12345dog = Dog() ...
python之httpstat框架学习
[TOC]
概述文章参考:https://github.com/reorx/httpstat
12345678910111213141516171819202122232425frewen@FreweniMacBook ~/03.ProgramStudy/09.Python/03.Sources/httpstat master python httpstat.py www.baidu.comConnected to 61.135.169.125:80 from 10.60.128.127:55181HTTP/1.1 200 OKAccept-Ranges: bytesCache-Control: private, no-cache, no-store, proxy-revalidate, no-transformConnection: keep-aliveContent-Length: 2381Content-Type: text/htmlDate: Sun, 28 Jun 2020 10:51:45 GMTEtag: "588604c1-94d"L ...
静态方法,类方法,属性方法的学习
[TOC]
文章参考:https://www.jianshu.com/p/44f2740c0db9
概述Python面向对象编程中,类中定义的方法可以是 @classmethod 装饰的类方法,也可以是 @staticmethod 装饰的静态方法,用的最多的还是不带装饰器的实例方法,如果把这几个方法放一块,对初学者来说无疑是一头雾水,那我们该如何正确地使用它们呢?
12345678910111213141516class Person(object): def name1(self, name): print("self:", self) @classmethod def name2(cls, name): print("cls:", cls) @staticmethod def name3(name): passperson = Person()person.name1(1) # self: <__main__.A object at 0x000001E596E41A ...
Activity的生命周期完全解析
[TOC]
概述ctypes 是 Python 的外部函数库。它提供了与 C 兼容的数据类型,并允许调用 DLL 或共享库中的函数。可使用该模块以纯 Python 形式对这些库进行封装。
Python的开发环境搭建
[TOC]
概述环境安装官网安装(不推荐)由于官网安装的
anaconda安装(推荐)在写这篇文章的时候,Anaconda 最新绑定版本是 2020.02。在下载安装脚本之前,浏览下载页面,并且检查是否有更新的Anaconda 可用。
官网地址:https://www.anaconda.com/products/individual
清华大学下载地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
由于Anaconda比较大,我们可以安装miniconda
我们看文章的最下面的miniconda
清华大学miniconda下载地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/
Mac版本安装:
12frewen@FreweniMac Downloads % chmod a+x Miniconda3-py39_23.5.2-0-MacOSX-x86_64.shfrewen@FreweniMac Downloads % ./Miniconda3-py39_23. ...
Python环境的软件安装
[TOC]
概述python环境安装python环境,截止目前为止我安装的环境是python3.9.17
2023.08.17
12(base) frewen@FreweniMac ~ % python --versionPython 3.9.17
软件安装安装opencv-python123pip install opencv-python Successfully installed numpy-1.25.2 opencv-python-4.8.0.74
python基础之列表学习
[TOC]
概述序列是 Python 中最基本的数据结构。
序列中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推。
Python 有 6 个序列的内置类型,但最常见的是列表和元组。
列表都可以进行的操作包括索引,切片,加,乘,检查成员。
此外,Python 已经内置确定序列的长度以及确定最大和最小的元素的方法。
列表是最常用的 Python 数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:
1234list1 = ['Google', 'Runoob', 1997, 2000]list2 = [1, 2, 3, 4, 5 ]list3 = ["a", "b", "c", "d"]list4 = ['red', 'green', 'blue', 'yell ...
python基础之元组学习
[TOC]
概述Python 的元组与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号 **( )**,列表使用方括号 **[ ]**。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
元组和列表在结构上没有什么区别,唯一的差异在于元组是只读的,不能修改。元组用“()”表示
在绝大多数编程语言中,集合的数据类型必须一致。不过,对于Python的列表和元组来说,并无此要求
其次,我们必须掌握它们的区别。
列表是动态的,长度大小不固定,可以随意地增加、删减或者改变元素(mutable)。
而元组是静态的,长度大小固定,无法增加删减或者改变(immutable)。
元组的不可变性所谓元组的不可变指的是元组所指向的内存中的内容不可变。
12345678910>>> tup = ('r', 'u', 'n', 'o', 'o', 'b')>>> tup[0] = 'g' # 不支持修改 ...