python基础 Day9
python Day9
函数的初识
#代码的可读性较好
s=[1,2,3,4,5,5]
def list_len(S):
count=0
for i in s:
count+=1
print(count)
list_len(s)
- 函数是以功能(完成一件事)为向导,登录,注册,len.一个函数就是一个共功能
函数的结构和调用
- def 关键字,定义函数
- list_len 函数名:与变量设置相同,其有可描述性
- 函数体:缩进。函数中尽量不要出现print
函数的返回值(Return)
在函数中遇到的return直接结束函数,终止函数
将数据返回函数的执行者,调用者list_len()
def test():
print("注视对方")
return "FDs"
print(test())
###结果注视对方
#FDs
return返回多个元素,是以元组的形式返回给函数的执行者,对多个返回值提取可以利用
函数的传参:让函数封装这的这个功能,盘活。函数的传参分为实参和形参
实参角度
位置参数:从左到右一一对应
def meet(sex,age):
print("打开软件")
print("性别:%s,年龄:%s"%(sex,age))
return
meet("男生","13")
三元与运算符
a=100
b=10
if a>b:
c=a
else:
c=b
print(c)
##改写为
c=a if a>b else b
print(c)
关键字参数(必须满足一一对应,但是可以调换位置)
def meet(name,age,hobby):
print("姓名:%s,年龄:%s,爱好:%s"%(name,age,hobby))
return
meet(name="zhuxaiyu",hobby="football",age=19)
混合传参(位置参数一定要在关键字参数的前面)
def meet(name,age,hobby):
print("姓名:%s,年龄:%s,爱好:%s"%(name,age,hobby))
return
meet("zhuxaiyu",hobby="football",age=19)
形参角度(是实参角度中位置参数的一种)
def meet(name,age,weight,skill="fdsfsd"):
print("姓名:%s,年龄:%s,体重:%s,技能:%s"%(name,age,weight,skill))
return
meet("zhuxiayu",19,55)
作业
写函数,计算传入函数的字符串中数字、字母、以及其他的个数
#写函数,计算传入函数的字符串中数字、字母、以及其他的个数
def count_fuc(str):
count_number=0
count_a=0
count_b=0
for i in str:
if i.isdecimal():
count_number+=1
elif i.isalpha():
count_a+=1
else:
count_b+=1
return print("数字:%s,字母:%s,其他:%s"%(count_number,count_a,count_b))
str="fdsfdsf322@"
count_fuc(str)
### 数字:3,字母:7,其他:1
写一个函数,此函数只接收一个参数且参数必须是列表数据类型,此函数的完成功能是返回给调用者一个字典。eg:传入的列表为[1,2,3,4],返回的字典为{0:1,1:2,2:3,3:4}
def fun(list1):
dict1={}
for i in range(len(list1)):
dict1[i]=list1[i]
return dict1
list1=[1,2,3,4]
print(fun(list1))写函数,函数接收四个参数分别是:姓名,性别,年龄,学历,用户通过这四个内容传送到函数中,此函数接受这个这个内容并追加到student_messgae.txt这个文本中,支持用户持续输入,Q或者q退出
def fuc(name,sex,age,qualifications):
with open("student_message.txt",encoding="utf-8",mode="a") as f:
f.write("%s,%s,%s,%s\n"%(name,sex,age,qualifications))
while True:
name=input("please input your name:")
if name.upper()=="Q":
break
else:
sex=input("please input your sex:")
age = input("please input your age:")
qualifications= input("please input your qualifications:")
fuc(name,sex,age,qualifications)写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个函数的修改操作。
import os
def refile(file1,oldcontent,newcontent):
with open(file1,encoding="utf-8") as f,\
open("new{}".format(file1),encoding="utf-8",mode="w") as f1:
for line in f:
content=line.replace(oldcontent,newcontent)
f1.write(content)
# old_content=f.read()
# new_content=old_content.replace(oldcontent,newcontent)
# f1.write(new_content)
os.remove(file1)
os.rename("new{}".format(file1),file1)
refile("student_message.txt","房贷首付","没钱")
python基础 Day9的更多相关文章
- Python全栈day9(Python基础)
Python基础 一,Windows安装Python3.5 下载地址:https://www.python.org/ftp/python/3.5.2/python-3.5.2rc1-amd64.exe ...
- python之最强王者(2)——python基础语法
背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- Python小白的发展之路之Python基础(一)
Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...
- Python之路3【第一篇】Python基础
本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...
- 进击的Python【第三章】:Python基础(三)
Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...
- 进击的Python【第二章】:Python基础(二)
Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...
- Python之路【第一篇】python基础
一.python开发 1.开发: 1)高级语言:python .Java .PHP. C# Go ruby c++ ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...
- python基础之day1
Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...
随机推荐
- 想理解JVM看了这篇文章,就知道了!
前言 本章节属于Java进阶系列,前面关于设计模式讲解完了,有兴趣的童鞋可以翻看之前的博文,后面会讲解JVM的优化,整个系列会完整的讲解整个java体系与生态相关的中间件知识.本次将对jvm有更深 ...
- C踩坑纪实——(一)
最近在项目过程中发现了几个c语言中没有注意到的小细节,成功入坑.下面记录的我遇到的问题,以及解决的方法,希望这个过程能给读者带来些许启发. 字符类型变量的溢出 首先来看下面这段代码,你认为会输出什么呢 ...
- metaclass 拦截类的创建,并返回
def upper_attr(future_class_name, future_class_parents, future_class_attr): #遍历属性字典,把不是__开头的属性名字变为大写 ...
- Django创建简单数据库
在 创建好的 app 目录下的 models.py 中,编写创建 数据库表的限制条件 class Student(models.Model): s_name = models.CharField(ma ...
- 11-21 logging 模块
默认情况下Python的logging模块将日志打印到了标准输出中,且只显示了大于等于WARNING级别的日志, 这说明默认的日志级别设置为WARNING(日志级别等级CRITICAL > ER ...
- 038_go语言中的状态协程
代码演示: package main import ( "fmt" "math/rand" "sync/atomic" "time ...
- 全球疫情爬取APP版
全球疫情统计APP图表展示: 将该任务分解成三部分来逐个实现: ①爬取全球的疫情数据存储到云服务器的MySQL上 ②在web项目里添加一个servlet,通过参数的传递得到对应的json数据 ③设计A ...
- 用 Python 制作关不掉的端午安康弹窗
端午节又称端阳节.龙舟节.重午节.龙节.正阳节.天中节等,端午节源自天象崇拜,由上古时代祭龙演变而来,因传说战国时期的楚国诗人屈原在五月五日跳汨罗江自尽,后来人们亦将端午节作为纪念屈原的节日,在端午节 ...
- Maven骨架生成项目速度慢问题解决办法
在创建maven project时(使用了archetype),速度慢的令人不敢相信,从Idea的控制台可以看到信息停留在: [INFO] <<< maven-archetype-p ...
- 使用Luhn算法实现信用卡号验证
问题描述: 2:信用卡号的验证 [信用卡号的验证] 当你输入信用卡号码的时候,有没有担心输错了而造成损失呢?其实可以不必这么 担心,因为并不是一个随便的信用卡号码都是合法的,它必须通过 Luhn 算法 ...