学习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
很多小伙伴纠结于这个一百天的时间,我觉得完全没有必要,也违背了我最初放这个大纲上来的初衷,我是觉得这个学习大纲还不错,自学按照这个来也能相对系统的学习知识,而不是零散细碎的知识最后无法整合,每个人的基 ...
随机推荐
- matlab学习笔记10_7数值计算类型和常用计算公式
一起来学matlab-matlab学习笔记11 数值数据类型以及特殊函数 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考书籍 <matlab 程序设计与综合应用>张德丰等著 ...
- html网页调用本地exe程序的实现方法(转)
https://blog.csdn.net/ilovecr7/article/details/46803711 最近在做一个项目,要什么网页里调exe...开始以为不能实现,后来想想很多就跟淘宝网页上 ...
- css重直居中代码
老是忘,记在这里: vertical-align: middle;
- ELK - nginx 日志分析及绘图
1. 前言 先上一张整体的效果图: 上面这张图就是通过 ELK 分析 nginx 日志所得到的数据,通过 kibana 的功能展示出来的效果图.是不是这样对日志做了解析,想要知道的数据一目了然.接下来 ...
- KMP算法JS实现
参考阮一峰的<字符串匹配的KMP算法>,用JS实现一版,备忘~ // 主串 let str1 = 'BBC ABCDAB ABCDABCDABDEDC'; // 模式串 let str2 ...
- ubuntu16.04+cuda9.0_cudnn7.5+tensorflow-gpu==1.12.0
1.查找可用的tensorflow源,该命令运行后终端会输出所有可用的源 anaconda search -t conda tensorflow 2.这里name是上一步中输出源的tensorflow ...
- LeetCode 872. 叶子相似的树(Leaf-Similar Trees)
872. 叶子相似的树 872. Leaf-Similar Trees 题目描述 请考虑一颗二叉树上所有的叶子,这些叶子的值按从左到右的顺序排列形成一个叶值序列. LeetCode872. Leaf- ...
- 【转帖】AMD Zen之父、Intel副总Jim Keller到底有多牛?
AMD Zen之父.Intel副总Jim Keller到底有多牛? https://www.cnbeta.com/articles/tech/907295.htm 几乎玩过 所有的中国国产化CPU的祖 ...
- spring框架学习(二)——注解方式IOC/DI
什么是注解 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分 ...
- Django-03-静态文件配置
一.django静态文件配置原理 静态文件配置就是为了让用户请求时django服务器能找到静态文件返回. 首先要理解几个概念: 媒体文件:用户上传的文件 静态文件:css,js,image等 开发环境 ...