python学习笔记(七)- 递归、python内置函数、random模块
1、函数的不固定参数:
#参数不是必填的、没有限制参数的个数、返回参数组的元组
def syz(*args): #参数组,不限制参数个数 #‘args’参数的名字可以随便命名
print(args)
#username = args[0] #返回的参数放在元组中,通过下标来取值
#pwd = args[1]
syz()
syz('niuhan','sdfsdf',122) >>> ()
>>> ('niuhan', 'sdfsdf', 122) #元组
2、关键字参数
#不限制传参的个数,但是传的格式必须是k-v的形式,传进来的参数放在字典里
def syz(**kwargs): #关键字参数
print(kwargs)
syz() #>>>{}
syz(name='',age=20) #>>>{'name': '', 'age': 20}
syz(name='nny',age=38,add='北京',home='河南')
syz('nhy') #报错
3、递归:函数自己调用自己
#少用递归,递归效率不高,递归最多循环999次
def test():
num = int(input("please enter a number:"))
if num%2==0: #判断是不是偶数
return True #如果是偶数,退出程序,返回True
print('不是偶数请重新输入!')
return test()
print(test()) #调用test函数
4、内置函数:pyhton自带的一些函数,可以直接拿来用的
常用的内置函数有:
print(all([1,2,3,4])) #判断可迭代的对象里面的值是否都为真
print(any([0,1,2,3,4])) #判断可迭代的对象里面的值是否有一个为真
print(bin(10)) #十进制转二进制
print(bool(None)) #把一个对象转换成布尔类型
print(chr(69)) #打印数字对应的ascii
print(ord('E')) #打印字符串对应的ascii码
print(dir(d)) #打印传入对象的可调用方法
exec('def a():print("我是a")') #执行python代码
a = eval('1+2') #也是用来执行python代码的,只能执行一些简单的代码,比如运算,[] {}
print(a)
print(filter(lambda x:x>5,[12,3,12,2,1,2,35]))#把后面的迭代对象根据前面的方法筛选
print(map(lambda x:x>5,[1,2,3,4,5,6]))
print(max(111,12))#取最大值
print(min((1,2,3)))#取最小值
print(abs(-1))#取绝对值的
print(round(11.119999,3))#取几位小数
print(sorted([2,31,34,6,1,23,4]))#排序
较为常用的:
id() #看内存地址
type() #看数据类型
print() #打印
input() #输入
list() #转list
set()# 转集合
str()#转字符串
dict()#转字典
int()#转int
float()#转float类型
len()#取长度
max()
min()
dir() #帮助你的
sorted()#排序
round(11.00011,2)#保留几位小数
map()
filter()
zip()
5、random模块的方法
import random,string
print(string.printable) #代表所有的 数字+字母+特殊字符 print(random.randint(1,10)) #从1-10随机取一个整数
print(random.uniform(1,99)) #随机取一个小数 #>>>73.5928709012442
print(round(random.uniform(1,99),2)) #配合round(),表示随机取小数点后2位的小数 #>>>59.22
print(random.choice([1,2,3,4])) #只能随机取1个元素(列表或字符串)
print(random.choice('abcde'))
print(random.sample(string.printable,5)) #随机取N个元素,返回的是list #>>>['A', 'x', ',', ')', 'E'] # random.shuffle([xxx])洗牌(打乱顺序)
pickts = ['A','J','Q','K',2,3,4,5,6]
random.shuffle(pickts) #只能传list(因为字符串不能修改)
print(pickts)
xx
python学习笔记(七)- 递归、python内置函数、random模块的更多相关文章
- python学习笔记(四):生成器、内置函数、json
一.生成器 生成器是什么?其实和list差不多,只不过list生成的时候数据已经在内存里面了,而生成器中生成的数据是当被调用时才生成呢,这样就节省了内存空间. 1. 列表生成式,在第二篇博客里面我写了 ...
- python学习笔记(五)— 内置函数
我们常用的‘’int,str,dict,input,print,type,len‘’都属于内置函数 print(all([1,2,3,4]))#判断可迭代的对象里面的值是否都为真 print(any( ...
- python学习笔记(九)内置函数
print(all([1,2,3,4]))#判断可迭代的对象里面的值是否都为真 True print(any([0,1,2,3,4]))#判断可迭代的对象里面的值是否有一个为真 True print( ...
- Python学习日记(六)——内置函数和文件操作(lambda)
lambda表达式 学习条件运算时,对于简单的 if else 语句,可以使用三元运算来表示,即: # 普通条件语句 if 1 == 1: name = 'prime' else: name = 'c ...
- python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍
目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...
- Python中字符串String的基本内置函数与过滤字符模块函数的基本用法
Python中字符串String的基本内置函数与用法 首先我们要明白在python中当字符编码为:UTF-8时,中文在字符串中的占位为3个字节,其余字符为一个字节 下面就直接介绍几种python中字符 ...
- day15 内置函数和模块
day15 内置函数和模块 1.三元表达式 代码如下: x = 1 y = 2 res = 'ok' if x > y else 'no' print(res) 输出结果:no 2.内置函数:重 ...
- 第七篇 python基础之函数,递归,内置函数
一 数学定义的函数与python中的函数 初中数学函数定义:一般的,在一个变化过程中,如果有两个变量x和y,并且对于x的每一个确定的值,y都有唯一确定的值与其对应,那么我们就把x称为自变量,把y称为因 ...
- Python学习之路6☞函数,递归,内置函数
一python中的函数 函数是逻辑结构化和过程化的一种编程方法. python中函数定义方法: def test(x): "The function definitions" x+ ...
- 学习Python函数笔记之二(内置函数)
---恢复内容开始--- 1.内置函数:取绝对值函数abs() 2.内置函数:取最大值max(),取最小值min() 3.内置函数:len()是获取序列的长度 4.内置函数:divmod(x,y),返 ...
随机推荐
- 颜色的RGB-计算HSV公式色度/饱和度/亮度 简化代码
计算颜色的HSV值 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新! ...
- python print()内置函数
啦啦啦啦啦啦,我又来了,学习任何东西都得坚持,我一定的好好加油!!! 今天来说说print()函数,前边我们已经用过好好多次啦,现在来学习哈吧!!! Python的内置函数,print() print ...
- 【java多线程】队列系统之ArrayBlockingQueue源码
1.简介 ArrayBlockingQueue,顾名思义:基于数组的阻塞队列.数组是要指定长度的,所以使用ArrayBlockingQueue时必须指定长度,也就是它是一个有界队列. 它实现了Bloc ...
- 光速搭lvs + keepalived + nginx
环境: VIP 192.168.2.224 LVS 192.168.2.217 centos7 nginx1 192.168.2.231 cen ...
- 【java】接口
class :用于定义类interface:用于定于接口 接口定义时,特点:1.接口中常见定义:常亮和抽象方法2.接口中的成员都有固定修饰符(如果没有会被隐式添加) 常量:public static ...
- EXCEL自动撤销合并单元格并填充相应内容(转帖)
若EXCEL工作表有很多合并的单元格,要将所有合并的单元格撤销,并填充撤销合并前显示的内容,这是一项很繁琐且容易出错的工作.但可通过宏程序可轻松准确地搞定,方法如下: 一.实现该功能的Excel宏程序 ...
- ionic3安卓平台引用高德地图
1.前置条件 第一步,注册高德开发者:第二步,去控制台创建应用:第三步,获取Key. 2.打开src目录下的index.html, 在head标签中添加以下代码,引入js: <script ty ...
- Bootice1.34版本把grub4dos0.46a写入硬盘MBR失败一个例子
Bootice1.34版本把grub4dos0.46a写入硬盘MBR失败一个例子 一个同事的台式机,BIOS启动,500GB硬盘,分了四个MBR分区,C盘是激活的主分区,第二个分区50 ...
- html动态元素点击事件添加
很多时候,页面的元素是后期异步动态添加在页面上.页面点击事件无效. 非动态的元素直接$().click();便可以直接触发点击事件,而动态元素需要事先注册事件. $(document).on('cli ...
- Scrapy学习篇(十二)之设置随机IP代理(IPProxy)
当我们需要大量的爬取网站信息时,除了切换User-Agent之外,另外一个重要的方式就是设置IP代理,以防止我们的爬虫被拒绝,下面我们就来演示scrapy如何设置随机IPProxy. 设置随机IPPr ...