1、查看Python的路径

@~/git/cupid (master)$ python
Python 2.7.2 (default, Oct 11 2012, 20:14:37)
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print(sys.path)
['', '/Library/Python/2.7/site-packages/httplib2-0.8-py2.7.egg', '/Library/Python/2.7/site-packages/simplejson-2.1.1-py2.7-macosx-10.8-intel.egg', '/usr/local/lib/python2.7/site-packages', '/Users/liqiu/git/cupid', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC', '/Library/Python/2.7/site-packages']

上面的例子也可以使用:python -v

2、Python为什么要self

Python要self的理由Python的类的方法和普通的函数有一个很明显的区别,在类的方法必须有个额外的第一个参数 (self ),但在调用这个方法的时候不必为这个参数赋值。Python的类的方法的这个特别的参数指代的是对象本身,而按照Python的惯例,它用self来表示。(当然我们也可以用其他任何名称来代替,只是规范和标准在那建议我们一致使用self)

为何Python给self赋值而你不必给self赋值?例子说明:创建了一个类MyClass,实例化MyClass得到了MyObject这个对象,然后调用这个对象的方法MyObject.method(arg1,arg2) ,这个过程中,Python会自动转为Myclass.mehod(MyObject,arg1,arg2)这就是Python的self的原理了。即使你的类的方法不需要任何参数,但还是得给这个方法定义一个self参数,虽然我们在实例化调用的时候不用理会这个参数不用给它赋值。事例:

class Python: def selfDemo(self): print 'Python,why self?'p = Python()p.selfDemo()

输出:Python,why self?

把p.selfDemo()带个参数如:p.selfDemo(p),得到同样的输出结果如果把self去掉的话

class Python: def selfDemo(): print 'Python,why self?'p = Python()p.selfDemo()

这样就报错了:TypeError: selfDemo() takes no arguments (1 given)扩展self在Python里不是关键字。self代表当前对象的地址。self能避免非限定调用造成的全局变量。

Python使用总结相关推荐

  1. Github配置(git+vscode+python+jupyter)

    ①下载git 打开 git bash 工具的用户名和密码存储 $ git config --global user.name "Your Name" $ git config -- ...

  2. 【实验楼】python简明教程

    ①终端输入python进入 欣赏完自己的杰作后,按 Ctrl + D 输入一个 EOF 字符来退出解释器,你也可以键入 exit() 来退出解释器. ②vim键盘快捷功能分布 ③这里需要注意如果程序中 ...

  3. 【Kaggle Learn】Python 5-8

    五. Booleans and Conditionals Using booleans for branching logic x = True print(x) print(type(x))''' ...

  4. 【Kaggle Learn】Python 1-4

    [Kaggle Learn]Python https://www.kaggle.com/learn/python 一. Hello, Python A quick introduction to Py ...

  5. 使用python愉快地做高数线代题目~

    今天接触到了python,发现真是极易上手啊!对比c语言是什么鬼东西= = 诶,等下,看完教学文章发现TA在下面写了这句话 如果做了前面的内容你可能已被吸引了,觉得c语言真的是废材! 不...不是的. ...

  6. python 位运算与等号_Python 运算符

    和大多数语言一样,Python也有很多运算符,并且运算符跟其他语言的运算符大同小异接下来一一介绍: 算术运算符: 运算符描述实例 +加 - 两个对象相加a+b的输出结果是30 -减 - 得到复数或者一 ...

  7. python减小内存占用_如何将Python内存占用缩小20倍?

    当程序执行过程中RAM中有大量对象处于活动状态时,可能会出现内存问题,特别是在对可用内存总量有限制的情况下. 下面概述了一些减小对象大小的方法,这些方法可以显著减少纯Python程序所需的RAM数量. ...

  8. python中排序英文单词怎么写_Python实现对文件进行单词划分并去重排序操作示例...

    本文实例讲述了Python实现对文件进行单词划分并去重排序操作.,具体如下: 文件名:test1.txt 文件内容: But soft what light through yonder window ...

  9. python程序如何执行死刑图片_如何判断对象已死

    已死的对象就是不可能被任何途径使用的对象,有以下几种方法判断一个对象是否已经死了: 引用计数 给对象添加一个引用计数器,每当有一个地方引用他,计算器就加 1:当引用失效时,计数器减 1:任何时刻计数器 ...

  10. Python gRPC 安装

    1. 安装依赖库 sudo pip3 install grpcio sudo pip3 install protobuf sudo pip3 install grpcio_tools 2. 生成对应文 ...

最新文章

  1. word 段显示在页面最下方_Word你说的白是什么白
  2. boost::core模块实现交换std的dateorder
  3. LInux线程——多线程与fork之间的问题
  4. 数据结构(6) -- 查找
  5. mysql identifier name is too long_ORA-00972: identifier is too long 问题处理
  6. pb blob存储到image_【Filecoin相关】速懂 Filecoin 自认证存储设计
  7. 线性表:顺序栈算法实现
  8. 微信淘宝等平台要互通!?腾讯阿里字节回应
  9. TwentyTwelve透明主题二次美化版
  10. 解决Error: ENOENT: no such file or directory, scandir ‘xxx\node-sass\vendor‘
  11. 手工给alv添加合计
  12. 银联网关支付接口规范
  13. Linux系统CPU占用100%原因分析
  14. linux关闭监听端口命令,如何在Linux系统中监听和关闭端口
  15. ireport 循环_ireport detail循环原理
  16. QTreeView更改节点图标和大小
  17. 2021-18.面向对象进阶
  18. linux mint ubuntu 16.06,Ubuntu和Linux Mint:安装Pinta 1.6工具
  19. 语法分析--自上而下分析的基本问题
  20. C# winform PictureBox显示opencv Mat图片

热门文章

  1. 软件设计师2004年5月下午试题6(C++ 数组下标检测)
  2. OpenCV编程简介
  3. MacOS怎样启用悬停文本功能的具体操作方法!
  4. 2019年2月22日 深入理解计算机系统(CS:APP)第一章读书笔记
  5. netstat 用法
  6. 在IIS上SSL的部署和启动SSL安全
  7. 担心5G用不起?提速降费不是说说而已
  8. 通过上一节部署出来的 Windows instance 有时候会发现操作系统时间总是慢 8 个小时,即使手工调整好时间和时区,下次 instance 重启后又会差 8 个小时...
  9. Web开发(初级)- 常用css总结,方便查询
  10. Linux异步IO【转】