记录python学习过程中的一些小心得
1.python中一切皆对象,内置数据结构也是对象。处理一个对象就是利用它带有的方法和属性,对该对象进行处理,一步步达到我们想要的结果。
2.编程时,先构思好我们处理的对象是什么,具有哪些属性和方法,我们的输出结果是什么对象。
3.python中引号(''或"")表示字符串,方括号([])表示列表,花括号({})代表字典,括号(())代表元组,数字表示整数或者浮点数,不带引号的字符串(如name)表示变量。其实这些符号与自定义类的形式差不多。比如自定义一个Persion类,当Persion(参数)时,表示实例化这个类。而‘参数’或[参数]也表示分别实例化字符串和列表这个类。
4.内置函数(用C语言编写)并不是适用于python中的一切对象,如list函数可用于可迭代对象。
5.函数、类其实就是对传入的参数对象进行处理,得到我们想要的结果。在类的内部,使用的是传入参数,即对象(某个类)的方法对该参数进行处理。
6.灵活运用python内置的数据结构及其方法、其他内置函数,在此基础上搭建出其他更多的函数和自定义类。
7.函数:函数的参数可以是自定义类,属性可以是自定义类对象,return也可以是自定义类。不要以为只有string类。只要在代码中导入了该类的定义,如果自定义类对象没有导入,会产生NameError错误,表示变量未被定义,不能被call。
8.python是一门动态语言(鸭子),并不在乎你传入的对象类型,只在调用该对象属性和方法时,如果未找到属性或方法,才会报错。
9.写代码要遵循开发封闭原则,虽然在这个原则是用面向对象开发,但是也适用于函数式编程,简单来说,它规定已经实现的功能代码不允许被修改,但可以被扩展
10.学习一个新的python包时,先看包含有几个类,观察包中的函数的输出是什么类,然后找该类的函数,对该对象进行处理。(注:函数的输出不一定是python内建的一些对象,如字符串等)
11.注意空白行,有时候会对结果产生一定影响
记录python学习过程中的一些小心得的更多相关文章
- 记录Python学习中的几个小问题
记录Python学习中的几个小问题,和C#\JAVA的习惯都不太一样. 1.Django模板中比较两个值是否相等 错误的做法 <option value="{{group.id}}&q ...
- BUI Webapp用于项目中的一点小心得
接触BUI也有一段时间,也用在了移动端的项目开发中,总的来说,该框架用起来也挺灵活的,控件可以自由定制,前提是自己能认真地学习该框架的api,因为api里面说的东西比较详细,如果没有仔细看的,可能有些 ...
- python学习过程中的踩坑记录<若干,随时更新>
问题1:python中print的连串输出与java不一样? 输入print(code +"+++"); --在代码中写入,界面未报错,但是告诉你不行 会报错,如图: 解决办法: ...
- python开发中常见的小坑
(1)可变参数类型作为函数参数默认值,函数参数默认值的设置在Python中只会被执行一次,也就是定义该函数的时候. 解决办法,设置为None,然后判断 (2)Python中的变量名解析遵循所谓的LEG ...
- Vue实例学习过程中碰到的小问题
在使用插值表达式{{ }}取data中list数组中的值时把整个表达式当做文本显示了,原因不明,但是使用v-text替换插值表达式之后问题得到解决. 原因已经查明,因为第78行,定义对象car时后面 ...
- Python学习过程中各个难点---数据类型篇
---恢复内容开始--- 当时在学习python的基本数据类型时,对于可变与不可变类型不是了解的很透彻,这篇是回过头来自己的一些理解. 可变的数据类型有列表,不可变的数据类型有字符串,数字和元组 ...
- Python学习中的一些小例子
这篇文章包括用Python编写的斐波那契数列,三位数的水仙花数和百钱买百鸡的基础代码 斐波那契数列: ''' def hanshu(n): n_1 = 1 n_2 = 1 m = n sumn = 0 ...
- 本篇将记录python开发过程中常见问题
1.Django 外键on_delete的使用 之前用的Django1.8 换成2.0后,出现以下问题: TypeError: init() missing 1 required positional ...
- Matlab学习过程中的一些小问题
1.Overload your functions by having variable number of input and output argumernt.Not only can we ov ...
随机推荐
- WEB漏洞攻击之验证码绕过浅析
最近安全部门对WEB系统进行了一次漏洞整改,发现了某个系统存在验证码绕过风险. 根据安全部门提供的信息,该漏洞构造场景是通过一层中间代理(Burpsuite Proxy)拦截客户端与服务端的请求,通过 ...
- Linux下OpenSSL的安装全过程(CentOS6.3 x86 + Openssl 1.1.0e)
写在前面:安装前先查看下老的openssl版本 (使用 openssl version -a 命令查看来版本),和服务器操作系统版本(uname -a),升级的原因是,老版的openssl已经 ...
- 前端CSS的工程化——掌握Sass这四大特性就够了
初遇 CSS,一见倾心 记得刚遇见css的时候,咱像是见了美人儿一样,简直是爱不释手啊,简简单单写几行算不上代码的代码,就能做出这么漂亮的东西,这也成了咱前端之路的最初动力. 然而,随着项目体量和页面 ...
- [译]在Asp.Net Core 中使用外部登陆(google、微博...)
原文出自Rui Figueiredo的博文<External Login Providers in ASP.NET Core> 摘要:本文主要介绍了使用外部登陆提供程序登陆的流程,以及身份 ...
- sort函数的用法与实验
用了这么久的sort排序,但是一直没有对他进行总结. 像我这样的蒟蒻有了sort排序就再也没有看过快排.冒泡排序.桶排序了...... sort的头文件<algorithm> 存在于C++ ...
- 深度解剖sesssion运行原理
已经大半年没有更新博客了,一方面有比博客更重要的事情要做,另外一方面也没有时间来整理知识,所以希望在接下来的日子里面能够多多的写博客来与大家交流 什么是session session的官方定义是:Se ...
- 使用背景图修改radio、checkbox样式
如果觉得设置样式太麻烦,或者页面上选中的样式太复杂,也可以用背景图去修改样式<div class=""> <label><input type=&qu ...
- JAVA通过Gearman实现MySQL到Redis的数据同步(异步复制)
MySQL到Redis数据复制方案 无论MySQL还是Redis,自身都带有数据同步的机制,像比较常用的 MySQL的Master/Slave模式 ,就是由Slave端分析Master的binlog来 ...
- Python爬虫:用BeautifulSoup进行NBA数据爬取
爬虫主要就是要过滤掉网页中没用的信息.抓取网页中实用的信息 一般的爬虫架构为: 在python爬虫之前先要对网页的结构知识有一定的了解.如网页的标签,网页的语言等知识,推荐去W3School: W3s ...
- Linux基础:文件查找find
写在前面 在linux的日常管理中,find的使用频率很高,熟练掌握对提高工作效率很有帮助. find的语法比较简单,常用参数的就那么几个,比如-name.-type.-ctime等.初学的同学直接看 ...