学习python的日常2
---恢复内容开始---
数组list
添加用.append(i,'xxx')方法
删除用.pop(i)方法,其中i为索引位置
数组可以直接作为元素插入数组
元组tuple(初始化后不能改变,所谓不变是指指向的位置不能变)
tuple中定义一个元素的时候要加一个逗号用来区分数组与数据赋值
list和tuple是python内置的有序集合,根据不同的需求去选择使用
python中的循环,在if条件语句中,是自上而下的进行判断,如果在上层中有为True的语句,就会执行相应的结果,而省略其他的判断语句
1.for...in循环 2.while循环 (依靠用户输入进行判断时,要注意数据类型的转换)
使用dict和set:感觉这个的话和java里面的set一样的,不过中间的处理有一点出入,dict的话就是key对应相应的value值,通过get()方法可以在key不存在的时候返回None或者自己指定的值,
利用pop()方法可以删除指定的key同时将其value带走。 set是一组key的集合,通过一组list作为输入集合,其中的值就算重复的话在打印的时候所显示的将会是唯一的key值,相当于告诉你有什么元素在里面
可以通过add(key)方法向set中添加元素,如果重复不会显示效果,通过remove(key)可以移除元素.
函数:定义函数时,需要确定函数名和参数个数;如果想保证函数的完整性可以先对参数的数据类型做检查。用return可以随时返回函数结果,函数中返回多个值实际上就是返回一个元组。
函数的参数:参数分为位置参数,默认参数,可变参数,关键字参数
默认参数一定要用不可变对象,如果是可变对象,程序运行会出现逻辑错误。
*args 是可变参数,args接收的是一个tuple。
**kw是关键字参数,kw接收的是一个dict。
示例:可变参数直接传入func(1,2,3),又可以先组装list或tuple,再通过*args传入func(*(1,2,3));
关键字参数:func(a=1,b=2),又可以先组装dict,在通过**kw传入:func(**{‘a’:1,‘b':2})。
命名的关键字参数是为了限制调用者可以传入的参数名,同时可以提供默认值。
定义命名的关键字参数在没有可变参数的情况下要记得有分隔符*,否则定义的就是位置参数。
递归函数:常见的递归函数,在函数内部去调用函数本身,从而达到循环的效果。
def act(n):
if n == 1:
return n
return n*act(n-1)
不过这样容易产生栈溢出,处理方式是尾递归优化,
def act(n):
return act_iter(n,1) def act_iter(num,product)
if num == 1:
return product
return act_iter(num-1,num*product)
---恢复内容结束---
学习python的日常2的更多相关文章
- 学习python的日常
今天是开始正式接触python语言的第一天,然后来自前辈的知道开始了在学习过程当中用博客来记录自己的学习历程,以供自己更快地掌握这门编程语言. 大概的总结一下的话,还是按照我的编程的习惯,要学写代码, ...
- 学习python的日常7
---恢复内容开始--- 正则表达式: 在正则表达式中,用\d可以匹配一个数字,\w可以匹配一个字母或数字,'.'可以匹配任意字符,用*表示任意个字符,用+表示至少一个字符,用?表示0个货一个字符,用 ...
- 学习python的日常6
错误.调试和测试: 错误处理: try: print('try...') r = 10 / 0 print('result:', r) except ZeroDivisionError as e: p ...
- 学习python的日常5
形如__xxx__的变量或者函数名,在python中是有特殊用途的,例如__slots__是为了绑定属性的名称, __len()__方法是为了让class作用于len()函数,很多这样的函数都可以帮忙 ...
- 学习python的日常4
偏函数: 偏函数是functools模块提供的一个功能,偏函数可以通过设定参数的默认值,降低函数调用的难度 其中设定的参数默认值实际上是可以被传入为其他值的,最后创建偏函数时可接收函数对象.*args ...
- 学习python的日常3
python的一些高级特性: 切片(跟名字一样,把一个完整的东西选取一部分自己想要的去切下来):通过切片可以快速的去除一些元素,只要确定好索引位置,避免的循环导致的多写代码 数组,元组,字符串都可以用 ...
- D03——C语言基础学习PYTHON
C语言基础学习PYTHON——基础学习D03 20180804内容纲要: 1 函数的基本概念 2 函数的参数 3 函数的全局变量与局部变量 4 函数的返回值 5 递归函数 6 高阶函数 7 匿名函数 ...
- 人工智能时代,应立即学习python
人工智能时代,应立即学习python 应用:web开发,自动化运维开发,自动化测试,数据分析,机器学习 1.python 快速易学习2.python 基于web开发(zhihu:tornad web框 ...
- 国内某Python大神自创完整版,系统性学习Python
很多小伙伴纠结于这个一百天的时间,我觉得完全没有必要,也违背了我最初放这个大纲上来的初衷,我是觉得这个学习大纲还不错,自学按照这个来也能相对系统的学习知识,而不是零散细碎的知识最后无法整合,每个人的基 ...
随机推荐
- (1)PyCharm开发工具安装Flask并创建helloworld程序
一.环境描述 1.操作系统:windows7 2.编程语言:python3.6 下载地址:https://www.python.org/downloads/windows/ 3.虚拟化环境:virtu ...
- notepadd++中,如何根据某个字符将一行内容切割成多行?
背景描述: 今天在做个事情,遇到下面字符,就想将每个词,如cluster,zookeeper都单独的一行 [cluster, activemq, controller, brokers, zookee ...
- 搭建SpringCloud微服务
建立spring父模块 删除不必要的src目录 父模块中的pom.xml中添加相应的依赖以及插件.远程仓库地址 <!-- 项目的打包类型, 即项目的发布形式, 默认为 jar. 对于聚合项目的父 ...
- Mac下的IDEA快捷键
快捷键 功能 Option + enter 打开提示 Command + / 注释方式是“行注释”:可以注释当前行.取消当前行的注释 注释选中的内容.取消选中行的注释 Option + Command ...
- AES的256位密钥加解密报 java.security.InvalidKeyException: Illegal key size or default parameters 异常的处理及处理工具
一.出现的现象为了数据代码在传输过程中的安全,很多时候我们都会将要传输的数据进行加密,然后等对方拿到后再解密使用.我们在使用AES加解密的时候,在遇到128位密钥加解密的时候,没有进行什么特殊处理:然 ...
- LODOP条码二维码简短问答及相关博文
LODOP如何输出条码 条码输出 参考样例11 http://www.c-lodop.com/demolist/PrintSample11.html超文本表格中的条码参考样例47 http://www ...
- 【tensorflow-转载】tensorflow模型部署系列
参考 1. tensorflow模型部署系列: 完
- [LeetCode] 495. Teemo Attacking 提莫攻击
In LOL world, there is a hero called Teemo and his attacking can make his enemy Ashe be in poisoned ...
- 用Postman做接口测试
The higher your test coverage, the more flexible and bug-resistant your code will be, and the less t ...
- PHP设计模式 - 桥接模式
将抽象部分与它的实现部分分离,使他们都可以独立的变抽象与它的实现分离,即抽象类和它的派生类用来实现自己的对象 桥接与适配器模式的关系(适配器模式上面已讲解): 桥接属于聚合关系,两者关联 但不继承 适 ...