随笔分类 - Python基础
Basic knowledge of Python
摘要:简而言之: 深浅拷贝的区别关键在于拷贝的对象类型是否可变。 我们可以总结出以下三条规则: 对于可变对象来说,深拷贝和浅拷贝都会开辟新地址,完成对象的拷贝 而对于不可变对象来说,深浅拷贝都不会开辟新地址,只是建立引用关联,等价于赋值 对于复合对象来说,浅拷贝只考虑最外层的类型,复合类型数据中的元素仍为
阅读全文
摘要:在python中,这两个是python中的可变参数,*arg表示任意多个无名参数,类型为tuple;**kwargs表示关键字参数,为dict。 # *允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple。 def f(a,*args): print(args) f(1,2,
阅读全文
摘要:(一)函数的可变参数 当函数的参数前面有一个星号*的时候表示这是一个可变的位置参数,两个星号**表示是可变的关键字参数。这样我们可以传递任意个参数 def foo(*args, **kwarg): for item in args: print item for k,v in kwarg.items
阅读全文
摘要:zip函数的原型为:zip([iterable, …]) 参数iterable为可迭代的对象,并且可以有多个参数。该函数返回一个以元组为元素的列表,其中第 i 个元组包含每个参数序列的第 i 个元素。返回的列表长度被截断为最短的参数序列的长度。只有一个序列参数时,它返回一个1元组的列表。没有参数时,
阅读全文
摘要:回车和换行的历史: 机械打字机有回车和换行两个键作用分别是: 换行就是把滚筒卷一格,不改变水平位置。 (即移到下一行,但不是行首,而是和上一行水平位置一样) 回车就是把水平位置复位,不卷动滚筒。 (即将光标移到行首,但是不会移到下一行,如果继续输入的话会覆盖掉前面的内容) Enter = 回车+换行
阅读全文
摘要:random.random() 没有参数,选择0到1之间的随机浮点数 random.uniform(a, b) 生成指定范围内的随机浮点数如果a、b哪个大那个小都没关系,生成的都是在小的与大的之间的随机浮点。 random.randint(a, b) 用于生成指定范围内的整数,参数上限a比如小于b,
阅读全文
摘要:当函数内部引用一个全局变量时,如果此全局变量为可变类型,那么函数内部是可以改变此全局变量的值,用不用globale申明全局变量都一样。但是如果想给此变量重新赋值则必须要使用global。 当函数内部引用一个全局变量时,如果此全局变量为不可变类型,那么如果要能够在函数内部改变全局变量的值,就需要用gl
阅读全文
摘要:读文件 程序输出: ['1', '2']['3', 'a']['4', 'b'] 写文件 注意用csv的默认写入时候,写完一行会自动空行后再写入,但添加中间的参数 newline='' 表示写完一行接着写第二行,中间不空行。同时参数‘r’,‘w’表示读取的字符,‘rb’, 'wb'表示读写的字节 c
阅读全文
摘要:Python中的io模块是用来处理各种类型的I/O操作流。主要有三种类型的I/O类型:文本I/O(Text I/O),二进制I/O(Binary I/O)和原始I/O(Raw I/O)。它们都是通用类别,每一种都有不同的后备存储。属于这些类别中的任何一个的具体对象称为文件对象,其他常用的术语为流或者
阅读全文
摘要:程序本意是每隔一秒输出一个数字,但是如果把这句话sys.stdout.flush()注释的话,你就只能等到程序执行完毕,屏幕上会一次性输出0,1,2,3,4。如果你加上sys.stdout.flush(),刷新stdout,这样就能每 隔一秒输出一个数字了。可以用在网络程序中多线程程序,多个线程后台
阅读全文
摘要:python中所有类都是继承自object, 而object提供了很多原始的内建属性和方法,所以用户自定义的类在Python中也会继承这些内建属性。可以使用dir()函数可以查看,虽然python提供了很多内建属性但实际开发中常用的不多。而很多系统提供的内建属性实际开发中用户都需要重写后才会使用。对
阅读全文
摘要:今天在学习《python3爬虫开发实战》中看到这样一段代码3 从来没有见过创建类的时候,传入一个metaclass参数。于是通过查找资料得知,Metacalss为python中的元类。 什么是元类? 简单的讲,元类创建了Python中所有的对象。 我们说Python是一种动态语言,而动态语言和静态语
阅读全文

浙公网安备 33010602011771号