![](https://img-blog.csdnimg.cn/2019091813595558.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
python基础笔记
在bilibili自学的收获记录,肯定有挺多不对的地方,欢迎各位批评指正哈,嘻嘻。
威尔士矮脚狗
不定期更新一些 NeRF 相关的论文和代码解读,以及一些深度学习相关的博客和编程技巧 :)
展开
-
自学python_19 正则表达式
正则表达式:search 和 match 方法:import remsg = "娜扎热巴代斯佟丽娅"pattern = re.compile("佟丽娅")res = re.match(pattern,msg)# match方法没有匹配成功才会返回None。# 只有把佟丽娅提前才能匹配得到。print(res)# None 在这里 娜扎热 和 佟丽娅匹配不上,所以返回None。res = re.match(pattern,msg)print(res)如何寻找那些混在一起的字母和数原创 2020-05-27 23:59:54 · 397 阅读 · 0 评论 -
自学python_18 模块
模块:把功能相近的类或者函数放到一个文件里。好处:提高代码的复用性,可以在其他代码中导入,解决了问题冲突的问题。导入模块:1.import 模块名模块名.变量模块名.函数模块名.类2.from 模块名 import 变量/函数/类在代码中可以直接使用不用加 模块名.3.from 模块import *导入该模块中的所有内容但是如果想限制获取的内容可以在模块中使用__all__ = [ * 可以访问到的东西]4.如果模块导入的时候会把模块所有的东西加载到内存中。如果在模块中调用了函数,函原创 2020-05-27 23:59:41 · 13994 阅读 · 0 评论 -
自学python_17 单例
单例开发模式:class Singleton(object): __instance = None def __new__(cls, *args, **kwargs): if cls.__instance is None: cls.__instance = object.__new__(cls) return cls.__instances = Singleton()s1 = Singleton()通过重写new函数在每原创 2020-05-27 23:59:28 · 368 阅读 · 0 评论 -
自学python_16 面向对象
1原创 2020-05-27 23:59:17 · 369 阅读 · 0 评论 -
自学python_15 迭代器
可迭代:可迭代的对象:1.生成器2.元组,列表,集合,字典,字符串。判断一个对象是否是可迭代的:from collections import Iterablelist1 = [1,4,7,8,9]f = isinstance("abc",Iterable)print(f)# Truef = isinstance(111,Iterable)print(f)# Falsef =...原创 2020-05-13 14:56:04 · 73 阅读 · 0 评论 -
自学python_14 生成器
生成器的介绍推导式在应用时如果推导的元素过大时(比如说一个长度为千万的列表)如果只使用前几个推到的元素的话会浪费大量的空间,所以提出生成器的概念,可以将推到的结果逐个的获取,更加方便遍历。生成器的使用方法一:调用生成器自身的函数__next__。list1 = [1,2,2,3,7]g = (x + 50 for x in list1 if x < 7)print(type(g)...原创 2020-05-01 19:18:40 · 92 阅读 · 0 评论 -
自学python_13 列表/集合/字典推导式
列表推导式:格式:一个表达式 for 变量 in [旧列表]或者 [表达式 for 变量 in 旧列表 if 条件]names = ["adsdsad","bbabasss","asdasdas","1wqewee","sad","21d"]result = [name.capitalize() for name in names if len(name) > 3]print(re...原创 2020-05-01 19:18:13 · 146 阅读 · 0 评论 -
自学python_12 异常
11原创 2020-05-01 19:17:51 · 86 阅读 · 0 评论 -
自学python_11 文件操作
1原创 2020-05-01 19:16:22 · 200 阅读 · 0 评论 -
自学python_10 函数05
匿名函数:def f(a,b): return a + b;s = lambda a,b : a + bprint(s)# <function <lambda> at 0x0000015786F149D8>匿名函数的返回值是一个函数,说明返回给s之后是可以使用s()调用的,在这里s的功能和f的功能是相同的。匿名函数也可以作为参数传递(在调用时用匿名函数)...原创 2020-04-19 23:41:14 · 132 阅读 · 0 评论 -
自学python_10 函数04
装饰器:闭包的升级,在开发上的应用例如判断用户的登录状态。修改丰富已经写好的函数。回顾:以函数作为参数(也是装饰器的基础):def test(): print("test")t = testt()# test print(f)# <function test at 0x000002BA5B9F7678>print(test)# <function test...原创 2020-04-19 23:38:57 · 106 阅读 · 0 评论 -
自学python_10 函数03
内部函数:今天在学习python的时候发现了一个神奇的功能,python居然能在函数内声明函数。def func(): n = 100 list1 = [3,6,9,4] def inner_func(): # 让每一个元素都 + 5 for index,i in enumerate(list1): list1[inde...原创 2020-04-08 09:40:56 · 63 阅读 · 0 评论 -
自学python_10 函数02
返回值def f(): return 1def f1(): return 1,2,3 print(f())# 1print(f1())# (1, 2, 3)python 里的返回值可以是一个或者多个,如果是多个就会把返回值包成一个元组然后返回。def f1(): return 1,2,3a,b,c = f1()print(a,b,c)# 1...原创 2020-04-08 09:39:37 · 110 阅读 · 0 评论 -
自学python_10 函数01
**作用:**将重复的代码,封装到函数,只要使用直接找函数。函数可以增强代码的模块化和提高代码重复利用率。定义函数:格式:def 函数名([参数]):函数体注意:1.必须使用关键字def。2.函数体注意缩进。3.函数名和括号紧跟着。import random# 生成随机数。def generate_random(): for i in range(3): ...原创 2020-04-01 21:50:13 · 78 阅读 · 0 评论 -
自学python_9 可变与不可变
在学习完数据前面的数据类型之后总结一下。可变与不可变的区别是改变内容之后id是否改变。举个例子:tuple1 = (1,2,3)print(id(tuple1))# 2224284747400tuple1 = (1,2)print(id(tuple1))# 2224286276488list1 = [1,2,3]print(id(list1))# 2224288000392...原创 2020-04-01 21:49:04 · 77 阅读 · 0 评论 -
自学python_8 集合
集合set:无序的不重复的元素定义。集合的定义:list1 = [1,2,5,4,1]s1 = set(list1)s2 = {}print(type(s1),type(s2))# <class 'set'> <class 'dict'>print(s1)# {1, 2, 4, 5}定义集合只能用set(),如果用{}的话就会定义成字典形式,但是打印集合...原创 2020-03-26 17:29:42 · 79 阅读 · 0 评论 -
自学python_7 字典
1原创 2020-03-23 21:54:42 · 82 阅读 · 0 评论 -
自学python_6 元组
元组:tuple是一种类似列表的容器。特点:1.定义的符号()2.元组中的内容不可修改3.关键字:tuplet1 = ()print(type(t1))#<class 'tuple'>t1 = ("hello")print(type(t1))#<class 'str'>t1 = ("hello",)print(type(t1))#<cl...原创 2020-03-23 21:54:31 · 195 阅读 · 0 评论 -
自学python_5 列表
列表中允许任意的类型。切片操作和字符串的方法一样。列表的添加append(str):末尾追加。extends(str/list): 默认把str拆开放进去。把列表拆开放进去。insert(int,str): 插入在插入在插入的可能是很多类型的元素,具体应用的时候可以试一下,比如下面的几个例子。>>> lst = ["11","22"]>>> ls...原创 2020-03-23 21:54:23 · 71 阅读 · 0 评论 -
自学python_4 字符串
字符串的知识点:s1 = 'aa's2 = "aa"s3 = '''aa'''s1,s2,s3的id是相同的,内容相同,id就一样。s1 == s2 为trues1 is s2 为trues1 = input()s2 = input()即使输入的内容一样,id也不一样,这是由于 input 函数执行时和用常量赋值时的过程不同, input 在输入时开辟一个新的空间。所以:...原创 2020-03-23 21:54:14 · 144 阅读 · 0 评论 -
自学python_3 for循环
range(a) 表示 [0~a) 的整数。使用时相当于c++中的 for(i = 0; i < a; i++)。**for与else匹配:**for循环执行之后加else:for i in range(4): xxxxxxelse: #不能用elif xxxxxx关键字 pass:for i in range(4): xxxxxxelse: ...原创 2020-03-23 21:54:05 · 302 阅读 · 0 评论 -
自学python_2 运算符优先级
优先级排序:**~±(符号运算符)*/ // %±(加减)<< >> (位移运算符)&^| 位运算,它们三个是有优先级区分的,原来学c++的时候就学错了,导致很多程序都除了问题。== != >= <= < >is is notnotandor位移运算符:左移右边补零,左边抹去一...原创 2020-03-23 21:53:55 · 84 阅读 · 0 评论 -
自学python_1 id与小整数池
在今天的学习中遇到了这样的一个问题。num = 257num_1 = 257print(id(num))print(id(num_1)) 这段代码在ide中的输出结果和在交互式中的是不一样的。我在网上查明了原因:在交互式中,-5 ~ 256都会有一个自己的空间,被称为小整数对象池。如果在小整数池之外定义一个变量。则会出现如果把数值257改成小整数池里的数,则在交互式中,id会相...原创 2020-03-23 21:53:43 · 158 阅读 · 0 评论