1:Python对象之间的赋值是内容赋值而不是引用赋值

  1. a = ["aaa","bbb","ccc"]
  2. b = a
  3. print a
  4. print b
  5.  
  6. a = ["ddd"]
  7.  
  8. print a
  9. print b
  10.  
  11. >>>>>>>>>>
  12. ['aaa', 'bbb', 'ccc']
  13. ['aaa', 'bbb', 'ccc']
  14. ['ddd']
  15. ['aaa', 'bbb', 'ccc']

也就是说,赋值之后,二者内容相互独立。

2:Python的自增自减

Python没有 ++ -- 这两个符号,但可以用 +=  -=  来进行加减运算的简写。

3:E记数法

Python中会把  10的n次方  表示为  en

如: 2.72e5 = 2.72x10^5

4:列表操作

增加一个:append(一个元素)

增加多个:extend([多个元素])

插入一个:insert(下标,元素)

删除具体元素:remove(具体元素)

根据索引删除:del list[下标]

弹出并返回元素:pop()弹出最后一个元素、pop(i)弹出下标i对应元素。

检查元素是否存在: 元素 in list

查找元素对应索引:list.index(元素)

列表排序:list.sort()【改变原列表】、newList = sorted(list)【不改变原列表】

列表倒转:list.reverse()、list.sort(reverse=True)

列表切片与赋值的区别:

  1. one = ["Tom","James","Sara","Fred"]
  2. new = one[:]
  3. new.sort()
  4. print "slice one:",one
  5. print "slice new:",new
  6.  
  7. two = ["Tom","James","Sara","Fred"]
  8. newTwo = two
  9. newTwo.sort()
  10. print "copy two:",two
  11. print "copy new:",newTwo
  12.  
  13. ===================
  14. slice one: ['Tom', 'James', 'Sara', 'Fred'] #切片赋值的话,改变new不会影响原来的数组
  15. slice new: ['Fred', 'James', 'Sara', 'Tom']
  16. copy two: ['Fred', 'James', 'Sara', 'Tom'] #直接赋值的话,改变newTwo会影响原来的数组
  17. copy new: ['Fred', 'James', 'Sara', 'Tom']

5:全局变量

全局变量(相当于静态变量):使用global修饰(global相当于static),整个程序文件中该名的变量唯一,无论在哪都可以访问、修改同一个变量。

  1. #coding = utf-8
  2. outer_var = 0
  3.  
  4. def func():
  5. print outer_var
  6. global outer_var #将outer_var声明为global全局变量
  7. outer_var = 1000
  8. print outer_var
  9.  
  10. func()
  11. print outer_var
  12.  
  13. #===========
  14. 0
  15. 1000
  16. 1000

只有global修饰的是全局变量,可以在函数内外访问、修改。用变量名声明的变量,在哪声明,作用域就在哪——函数内定义的变量就是在函数内访问,函数外定义的就只能在函数外的同级代码行中访问,函数内不能访问到!

  1. #coding = utf-8
  2.  
  3. outer_var = 0
  4.  
  5. def func():
  6. print outer_var #此句报错:访问不到该变量
  7.  
  8. outer_var = 1000 #此处是定义了一个同名的局部变量,并不是修改了函数外变量
  9. print outer_var
  10.  
  11. func()
  12. print outer_var #这里访问的是外部定义的变量

6:字符串操作

分解字符串:list = str.split(分割标记)

连接字符串

拼接:newStr = str1 + str2

使用连接符连接:newStr = 连接符.join(strList)  #把字符串列表strList连接起来,并且在每个字符串之间插入连接符。

  1. strList = ["I","love","python","!"]
  2. newStr = " ".join(strList) #使用空格作为连接符,把strList中的元素连接起来
  3. print newStr
  4.  
  5. #===========
  6. I love python !

匹配字符串

开头、结尾匹配检索:startswith、endswith

包含检索:检索内容 in str

下标检索:pos = str.index("检索内容")

裁剪字符串

裁剪末尾内容:str.strip("裁剪内容")  #如果不输入内容,则裁剪字符串末尾的所有空格

大小写转换:str.lower()、str.upper()

7:使用print写入文件内容:  print >> file,"内容"

8:对象持久化

python的pickle模块提供了对象持久化的方法:

pickle.dump(对象,文件):把对象持久化到文件中。

obj = pickle.load(file):从文件中加载对象。

9:

《跟孩子学Python》的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. 新闻编辑室第一季/全集The Newsroom迅雷下载

    第一季 The Newsroom Season 1 (2012)看点:频出佳剧的HBO这次将目光对准了新闻间这个话题多,故事更多的“小”地方.该剧讲述的是一家虚构的有线电视新闻网ACN的故事,由阿伦· ...

  2. 斯巴达克斯血与沙第一季/全集Spartacus迅雷下载

    斯巴达克斯血与沙 第一季Spartacus 1(2010) 本季看点:剧集讲述斯巴达克斯从奴隶变成英雄的血泪辛酸史.被罗马人背叛,流放成奴隶,变为角斗士--这一段罗马共和国历史上最富盛名的传奇故事无人 ...

  3. pip 安装错误 'ascii' codec can't encode characters

    安装 python-dev既可解决 apt-get install python-dev

  4. 开源项目MultiChoiceAdapter详解(五)——可扩展的MultiChoiceBaseAdapter

    上次写到了开源项目MultiChoiceAdapter详解(四)——MultiChoiceBaseAdapter的使用,其实我们仍旧可以不使用ActionMode的,所以这里就写一个自己扩展的方法. ...

  5. 白话Spring(基础篇)---AOP(execution表达式)

    作为AOP的最后一节内容,我们来简单总结一下切面表达式上见的书写方法.下面的那内容有参考其他博文,在此先对开源博客的各位大神表示感谢! -------------------------------- ...

  6. 图像质量评估(IQA)

    图像质量评估函数的分类曾是一个比较有争议的话题,在2l世纪以前曾经有过 比较多的讨论.但是随着研究的深入和技术的广泛应用,研究人员对于图像质量 评估函数的分类有了统一的认识,即从实际应用中参考信息供给 ...

  7. Forward secrecy

    In cryptography, forward secrecy (FS), also known as perfect forward secrecy (PFS), is a property of ...

  8. [转]RSA,DSA等加解密算法介绍

    From : http://blog.sina.com.cn/s/blog_a9303fd90101cgw4.html 1)      MD5/SHA MessageDigest是一个数据的数字指纹. ...

  9. VS Code .vue文件代码缩进以及格式化代码

    首先在应用商店中搜索“Vetur”插件安装,然后进行下面操作: 文件->首选项->设置,然后在右边编辑框输入以下设置: { "prettier.tabWidth": 4 ...

  10. 解决THINKCMF后台文章的相册图集只能上传一个图片的问题

    遇到的问题: 最近使用了THINKCMF给客户开发了一个企业网站,客户在使用了一段时间后打电话说后台文章编辑页面有问题 经过沟通过知道,在后台文章编辑和添加页面相册图集每次只能上传一张图片   在跟客 ...