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 ...
随机推荐
- poj2723 2-sat
当两个门锁相同时,这个钥匙必须用,不同时分开用 可以直接遍历门,当然二分更快 #include<map> #include<set> #include<cmath> ...
- ORACLE expdp \ impdp \ exp \ imp
(转自:http://www.cnblogs.com/lanzi/archive/2011/01/06/1927731.html) EXPDP命令行选项1. ATTACH该选项用于在客户会话与已存在导 ...
- day13作业
#作业1猜年龄 , 可以让用户最多猜三次! # Auther:bing #!/usr/bin/env python age = 24 print("猜年龄") for i in r ...
- LeetCode OJ:Spiral MatrixII(螺旋矩阵II)
Given an integer n, generate a square matrix filled with elements from 1 to n2 in spiral order. For ...
- Android性能调优实例
本文主要分享自己在appstore项目中的性能调优点,包括同步改异步.缓存.Layout优化.数据库优化.算法优化.延迟执行等. 目前性能优化专题已完成以下部分: 性能优化总纲——性能问题及性能调优方 ...
- http keep - alive 与 长连接
http1.0 2.0 1.1区别 你可以把 WebSocket 看成是 HTTP 协议为了支持长连接所打的一个大补丁,它和 HTTP 有一些共性,是为了解决 HTTP 本身无法解决的某些问题而做出的 ...
- [置顶]
Android RadioButton与TextView浪漫约会?
情景一 今天主要实现一个国家与地区切换,就是当我们选中RadioButton时然后将值设置到TextView中,听着这需求应该不难对吧?那么我们就开始约会吧? 看下原型图 准备条件: 首先需要一个ra ...
- sysbench安装for oracle
RHEL7.2+ 1.依赖包安装 * autoconf * automake * cdbs * debhelper (>= 9) * docbook-xml * docbook-xsl * li ...
- HDU - 6098:Inversion(暴力均摊)
Give an array A, the index starts from 1. Now we want to know B i =max i∤j A j Bi=maxi∤jAj , i≥2 i≥ ...
- 高级C/C++编译技术之读书笔记(五)之动态库版本控制
最近有幸阅读了<高级C/C++编译技术>深受启发,该书深入浅出地讲解了构建过程(编译.链接)中的各种细节,从多个角度展示了程序与库文件或代码的集成方法,提出了面向代码复用和系统集成的软件架 ...