python's ninth day for me
函数
函数的定义与调用:
#def 关键字 定义一个函数。
# my_len 函数名, 函数名的书写规则与变量的命名一致。
# def 与函数名中间一个空格。
# 函数名() : 加上冒号。
# 里面的整体被称为函数体。
def my_len():
li = [1,2,3]
count = 0
for i in li:
count += 1
print(count)
my_len() #函数的执行: 函数名+()
函数的返回值:
写函数,不要在函数中写print()
# return
#1. 在函数中,遇到return结束函数。
#2. 将值返回给函数的调用者。
# 无 return
# return None
# return 1 个值,该值是什么,就直接返回给函数的调用者,函数名()
def my_len():
li = [1,2,3]
count = 0
for i in li:
count += 1
return count #返回count的值给 my_len()
print(my_len())
# return 多个值,将多个值放到一个元祖中,返回给函数调用者。
def func():
return 1,2,3,[4,5,'顾清秋'],6
print(func()) # (1, 2, 3, [4, 5, '顾清秋'], 6)
函数的参数传值:
实参角度:
1,位置传参。按顺序,一 一 对 应.
def func(a,b,c):
print(a)
print(b)
print(c)
func(1,2,3) #一一对应位置传参。 #
#
#
2,关键字传参,不按顺序,一 一 对 应。
def max(a,b):
if a > b:
return a
else:
return b
# num1 = int(input('请输入第一个数'))
# num2 = int(input('请输入第二个数'))
print(max(b = 10,a = 9))
def max(a,b):
return a if a>b else b
print(max(b = 10,a = 9)) #
3, 混合传参, 关键字参数永远在位置参数后面。
def func(a,b,c):
print(a)
print(b)
print(c)
func(1,c = 2,b = 4) #关键字参数永远在最后面 #
#
#
形参角度:
1,位置传参,按顺序,一 一对应。
def func(a,b,c):
print(a)
print(b)
print(c)
func('顾清秋',2,4) # 顾清秋
#
#
2,默认参数,传参则覆盖,不传则为默认参数,默认参数永远在位置参数后面。
def func(a,b=1): # b =1 为默认参数
print(a)
print(b)
func('顾清秋') # 顾清秋
#
def func(a,b=1): # b =1 为默认参数
print(a)
print(b)
func('顾清秋','懒笨呆') # 顾清秋
# 懒笨呆
简单的学生信息录入系统:
def infor(name,sex = '男'): #定义一个函数 infor
with open('msg',encoding='utf-8',mode='a') as f: #创建'msg' 文件准备追加内容
f.write('{}\t{}\n' .format(name,sex)) # 格式化输出 能够同时写入 name 和 sex 信息。
while True:
name = input('请输入姓名,男生请以1开头,例如:1张三').strip()
if '' in name: #判断name中是否有'1'
name = name[1:] #用切片将输入的'1'删除
if name == '': #判断是否输入为空
print('没有输入名字,请重新输入...')
continue #跳回输入阶段
else:
infor(name) #调用函数,传入实参。
else:
infor(name,'女') #调用函数,传入实参。
python's ninth day for me的更多相关文章
- python瓦登尔湖词频统计
#瓦登尔湖词频统计: import string path = 'D:/python3/Walden.txt' with open(path,'r',encoding= 'utf-8') as tex ...
- 学习Python不得不关注和学习的国外大神博客
注意 : 本文收集于网路 . 由于常常更新 , 有些链接打不开, 请自备梯子 在学习Python过程中,总会遇到各种各样的坑, 虽然Python是一门优美而简单易学的语言 . 但当学习后 , 总想着更 ...
- python模块inspect.py
inspect模块用来检查对象的类型(函数,属性,类,抽象基类,方法,模块等等) 是一个封装好的非常有用的模块. ]) ]: cls = :]: content = ] = lines[].lstri ...
- Python 在气象上的应用
Python 在气象上的应用 grug350关注 0.7892019.03.15 23:19:31字数 913阅读 1,024 为什么选择python 免费和开源,没有商业许可限制anaconda p ...
- Python中的多进程与多线程(一)
一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...
- Python高手之路【六】python基础之字符串格式化
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...
- Python 小而美的函数
python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况 any any(iterable) ...
- JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议
软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...
- 可爱的豆子——使用Beans思想让Python代码更易维护
title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...
随机推荐
- SessionUtils
import com.diyfintech.constant.Constant.SuperAdmin; import com.diyfintech.pojo.SysUser; import org.a ...
- Spring属性注入、构造方法注入、工厂注入以及注入参数(转)
Spring 是一个开源框架. Spring 为简化企业级应用开发而生(对比EJB2.0来说). 使用 Spring 可以使简单的 JavaBean 实现以前只有 EJB 才能实现的功能.Spring ...
- poi自定义颜色设置(转)
原文链接 http://javapolo.iteye.com/blog/1604501 最近在项目的开发中使用到了apache poi,该组件可以让我们方便的操作excell,该工具非常容易上手,但 ...
- Python正则表达式使用过程中的小细节
今天用Python写了个简单的爬虫程序,抓取虎扑篮球(nba.hupu.com)的首页内容,代码如下: #coding:gb2312 import urllib2, re webpage = urll ...
- 专业工具软件PCB板打印说明
专业工具软件PCB板打印说明 请注意PCB板打印不要直接截图,如下方式是不正确的: 这样在打印为黑白图片时,元器件之间的连线无法看清. 应采用如下模式: ~End~
- 正则 去除html标签
String.prototype.stripHtml=function(){ var re=/<(?:.)*?>/g; // *? 意味着匹配任意数量的重复 return this.rep ...
- Windows Phone 8 Programming Considerations
OpenGL ES 2.0 Support Marmalade supports the Open GL ES 2.0 Graphics API on Windows Phone 8 using a ...
- opencv 边界确定函数
多边形逼近,用嘴贴切的多边形标识 void approxPolyDP(InputArray curve, OutputArray approxCurve, double epsilon, bool c ...
- ajax跨域解决
https://blog.csdn.net/csdn_ds/article/details/73691134 Access-Control-Allow-Origin 跨域设置多域名:http://ww ...
- libwebsockets libwebsockets-webserver.c hacking
/********************************************************************************** * libwebsockets ...