Python基础-数据类型转换,默认参数,关键字参数
Python基础-数据类型转换,文件操作,默认参数,关键字参数
1.数据类型之间转换
"""
数字型:int float bool compex
非数字型:list tuple set dict str
"""
# str->int
# str->float
# score = float(input('请输入年纪'))"""------------------ int ------------------"""
# str->int
# str = '10101'# 1+4+16
# 默认10进制
# 10进制 100
# result = int(str)
# 8进制 017 7+8 = 15 012 2+8 = 10
# result = int(str,base=8)
# 16进制 每一位最大 15 1-9 a b c d e f 0x6FF 0x12 2+16 = 18 0xa7 7+10 = 17
# result = int(str,base=16)
# 2进制 0 1 1001 1+8 = 9
# result = int(str,base=2)
#
# print(result)"""------------------ float ------------------"""
# str->float
# str = '1.232123'
# result = float(str)
# print(result)"""------------------ list tuple set之间转换 ------------------"""
# list()->list
# tuple()->tuple
# set()->set
"""------------------ dict ------------------"""
# d = {}
# d = dict([('name','张三'),('age',40)])
# print(d)
"""------------------ frozenset ------------------"""
# s = {1,2,3}
# 添加元素
# s.add(4)
# print(s)
# 不可变的集合 元素唯一
# result = frozenset(s)
# # result.
# print(result)"""------------------ chr ------------------"""
# 将数字转换成码表对应的字符
# f = 97
# rsult = chr(f)
# print(rsult)
"""------------------ ord ------------------"""
# 字符转化成整数值
# str = 'a'
# result = ord(str)
# print(result)"""------------------ 定义列表保存a-z ------------------"""
# l = ['a','b','c']
# l = []
# for ele in range(ord('a'),ord('z')+1):
# l.append(chr(ele))
# print(l)"""------------------ hex ------------------"""
# a = 18
# 0-9 a b c
# print(hex(a))"""------------------ oct ------------------"""
a = 18
print(oct(a))
默认参数和关键字参数:
# 默认参数要放到函数参数最后
def sayHello(score,name='林青霞'):# 形参 没有默认数据的参数定义在有默认数据的参数后面'''给女神打招呼:param name::return:'''print('hello %s'%(name))sayHello(60,'高圆圆')
# 调用函数
# sayHello('高圆圆')# 实参
# 如果不传递默认参数的数据 ,使用默认参数对应的数据
# sayHello()# l = [1,2,3]
# l.sort(reverse=True)
# print(l)
# ''.find()
关键字参数:
def sayHello(name,age,score):print('姓名:%s,年纪:%d,分数:%f'%(name,age,score))sayHello(score=70,age=30,name='高圆圆')
默认参数的作用:
"""
网络请求:
请求地址:path
请求方式:GET POST网络请求模块
"""
# python不支持方法重载
def sendRequest(path,method='GET'):# 发送网络请求print('请求地址:%s,请求方式:%s'%(path,method))# def sendRequest(path):
# '''
# 默认使用GET方式 请求
# :param path:
# :return:
# '''
# print('请求地址:%s,请求方式:%s'%(path,'GET'))# 30种请求 GET:25 POST:5
# 请求新闻列表
sendRequest('http://www.toutiao.com')
sendRequest('http://www.toutiao.com')
sendRequest('http://www.toutiao.com')
sendRequest('http://www.toutiao.com')
sendRequest('http://www.toutiao.com')
sendRequest('http://www.toutiao.com')
# 登录
sendRequest('http://toutiao.login.com','POST')
可变参数args:
"""
思考:
1.定义函数,求两个数的和
2.定义函数,求三个数的和
3.定义函数求任意个数的和"""
# 1.定义函数,求两个数的和
# 2.定义函数,求三个数的和8
# 3.定义函数求任意个数的和
def sum(name,*args):# 形参能够接收任意个长度的数据# args是什么类型?result = 0for ele in args:result += elereturn resultprint(sum('张三',10, 20,30))
keargs:
def func(a,**kwargs):# kwargs 接收不存在的关键字参数name = kwargs['name']age = kwargs['age']print(kwargs)func(name = '张三',age = 30,a=10,score=70)
传递元组到args中:
def func(*args):print(args)#(10,20,30)# func(10,20,30)
t = (10,20,30)
func(*t)
字典传递给kwargs:
# def func(**kwargs):
# print(kwargs)
#
#
# d = {'name':'张三','age':40}
# # func(name='张三',age=30)
# # func(name = d)
# func(**d)def func(*args):print(args)d = {'name':'张三','age':40}
# 如果* 拆字典的key
func(*d)
可变参数练习:
"""
需求:
1.定义函数func1接收可变参数*args以及**kwargs,打印args以及kwargs
2.定义函数func2接收可变参数*args以及**kwargs,调用func1将参数传递给func1
3.调用func2,保证func1和func2中打印的两个参数完全一致"""
# 1.定义函数func1接收可变参数*args以及**kwargs,打印args以及kwargs
def func1(*args,**kwargs):print('func1开始')print(args)print(kwargs)print('func1结束')# 2.定义函数func2接收可变参数*args以及**kwargs,调用func1将参数传递给func1
def func2(*args,**kwargs):print('func2开始')print(args)print(kwargs)# 调用funcfunc1(*args,**kwargs) # (10,20,30) {'name':'张三','age':30}print('func2结束')
# 3.调用func2,保证func1和func2中打印的两个参数完全一致
func2(10,20,30,name='张三',age=30)
递归求阶乘:
"""
需求:
使用递归求n的阶乘阶乘: 5的阶乘10的阶乘 1*2*3...*9*105*4*3*2*1 5 * 4的阶乘(4*3*2*1)
n的阶乘 n * (n-1)的阶乘(n-1*...*1)
"""
count = 0
# go 90000
# kotlin 60000
# python 966
def func(n):global countcount+=1print(count)'''求n的阶乘:param n: 需要求的阶乘:return: n的阶乘'''if n==1:return 1else:return n*func(n-1)print(func(1000))# 1 1 2 3 5 8 13 21 34 55
#
Python基础-数据类型转换,默认参数,关键字参数相关推荐
- python基础-数据类型转换
数据类型转换也就是把之前的数据类型转换成另外一种,我们可以通过做运算或者内置函数进行转换,这篇文章我们来讲解一下具体怎么实施. 一.做运算 进行算术运算可以在int和float直接进行转换,如下代码: ...
- python 可变参数 关键字参数_Python之 可变参数和关键字参数
原标题:Python之 可变参数和关键字参数 刚开始接触 python 的时候,对 python 中的 *wargs (可变参数) 和 **kwargs (关键字参数)的理解不是很透彻,看了一下 &l ...
- Python基础灬函数(定义,参数)
函数 函数定义 # 定义一个计算绝对值的函数 def cal_abs(x):if x >= 0:return xelse:return -x# 调用函数 print('-1的绝对值是:%s' % ...
- python 可变参数 关键字参数_Python关键字及可变参数*args,**kw原理解析
可变参数 顾名思义,函数的可变参数是传入的参数可以变化的,1个,2个到任意个.当然可以将这些 参数封装成一个 list 或者 tuple 传入,但不够 pythonic.使用可变参数可以很好解决该问题 ...
- Python基础数据之列表知识(二)
Python基础数据之列表知识(二) 一.列表的特点 二.列表的排序 三.列表的嵌套 1.嵌套的基本使用 2.嵌套的示例 四.列表的循环删除 五.列表相关知识链接 一.列表的特点 1.有序 2.独立 ...
- Python基础数据之列表
Python基础数据之列表 一.列表介绍 1.简介 2.列表的特性 二.列表初识 三.for循环中使用 四.列表长度表示 五.向列表中添加内容 1.向列表中追加内容 2.向列表中插入内容 3.批量添加 ...
- python的数据类型转换
python的数据类型转换函数 1.int() int():如果括号内没有值,给变量赋值0,如果有值,将float.bool.str类型的数据转换为int类型,float类型转换为int类型时去除小数 ...
- Python基础教程:默认参数和可变参数
1. 默认参数 在函数定义时附加一个赋值运算符(=)来为参数指定默认参数值.必选参数在前,默认参数在后,匹配时从左往右进行匹配. 使用默认参数有什么好处?最大的好处是能降低调用函数的难度. def e ...
- 调用jsapi缺少参数appid_【Python学习笔记】18、函数的参数关键字参数
可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple.而关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict.请看示例: de ...
最新文章
- 线性代数-矩阵-【5】矩阵化简 C和C++实现
- 卫星图像中的车辆分析--A Large Contextual Dataset for Classification, Detection and Counting of Cars
- 3.相应重定向与请求转发的比较
- clion 远程连接linux服务器 开发调试
- python右对齐 数字_如何在Python中右对齐数值数据?
- ML.NET 示例:图像分类模型训练-首选API(基于原生TensorFlow迁移学习)
- 《STL源码剖析常见面试问题》
- dw替换多个html标签,DW查找替换的技巧
- [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第10篇]RSA和强RSA问题有什么区别
- 民生银行 一码付 php,PHP开心码支付免签约第四方支付平台源码修复版
- C/C++ _wcslwr_s 函数 – unicode 字符串大写转小写 - C语言零基础入门教程
- 删除选修c语言课程的女生成绩记录,pta10-1 查询没有选修‘C语言‘课程的学生 (10分)...
- “价值互联网”时代,带你读懂区块链
- https的安装(基于阿里云)
- Linux系统可视化界面与Shell界面切换
- zoj水题分类(自己练习)
- ROS导航调参经验总结(Teb算法)
- Python练习题——第六题:编写函数计算弧长的计算公式。弧长计算公式是一个数学公式,为L=n(圆心角度数)× π×2 r(半径)/360(角度制)。其中n是圆心角度数,r是半径,L是圆心角弧长。
- 求球体的表面积和体积
- 2015-点餐系统(服务器)