首页 / PYTHON / Python之函数基础
Python之函数基础
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python之函数基础,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2780字,纯文字阅读大概需要4分钟。
内容图文
Python之函数基础
背景:
1、有重复代码,用函数增加代码的重用性
2、代码太长,用函数增强代码的可读性
一、参数
参数可分为形参、实参、位置传参和关键字传参
注意:
1. ** 必须放在 * 的后面
2. 参数和动态参数混合时,动态参数只能放在最后
3. 默认值参数和动态参数同时存在
二、返回值
1、返回值可以是任意类型,如果函数中没写return,则默认返回None
注:当在函数中未写返回值
或 return
或 return None
,执行函数获取的返回值都是None
2、return后面的值如果有逗号,则默认会将返回值转换成元组再返回
3、函数一旦遇到return就会立即退出函数(终止函数中的所有代码)
举例演示:
1、请定义一个函数,用于计算一个字符串中字符a
出现的次数并通过return返回
需求:- 参数,字符串。
- 返回值,字符串中 a 出现的次数
def char_count(text):
count = 0
for char in text:
if char == ‘a‘:
count += 1
return count
result = char_count("alex")
print(result)
2、写函数,判断用户传入的一个值(字符串或列表或元组任意)长度是否大于5,并返回真假
def judge_length(data):
if len(data) > 5:
return True
return False
result = judge_length(‘dadadadda‘)
print(result)
3、写函数,接收两个数字参数,返回比较大的那个数字(等于时返回两个中的任意一个都可以)
def get_bigger(num1, num2):
if num1 > num2:
return num1
return num2
result = get_bigger(2, 3)
print(result)
4、写函数,函数接收四个参数分别是:姓名,性别,年龄,学历,然后将这四个值通过"*"拼接起来并追加到一个student_msg.txt文件中
def write_file(name, sex, age, edu):
list = [name, sex, age, edu]
data = ‘*‘.join(list)
with open(‘student_msg.txt‘, mode=‘a‘, encoding=‘utf-8‘) as pf:
pf.write(data)
result = write_file(‘alex‘, ‘男‘, ‘30‘, ‘本科‘)
print(result)
5、补充代码,实现如下功能:
- 【位置1】读取文件中的每一行数据,将包含特定关键的数据筛选出来,并以列表的形式返回。
- 【位置1】文件不存在,则返回None
- 【位置2】文件不存在,输出 "文件不存在",否则循环输出匹配成功的每一行数据
import os
def select_content(file_path,key):
# 补充代码【位置1】
if not os.path.exists(file_path):
return None
# 补充代码【位置1】
data_list = []
with open(file_path, mode=‘r‘, encoding=‘htf-8‘) as pf:
data = pf.read()
for line in data:
if key in line:
data_list.append(line)
return data_list
result = select_content("xxx.txt", "股票")
# 补充代码【位置2】
if result == None:
print(‘文件不存在‘)
else:
print(result)
6、补充代码,实现敏感词替换的功能
def change_string(origin):
# 补充代码,将字符串origin中中的敏感词替换为 **,最后将替换好的值返回。
data_list = ["苍老师", "波多老师", "大桥"]
for item in data_list:
origin = origin.replace(item, ‘**‘)
return origin
text = input("请输入内容:")
result = change_string(text)
print(result)
7、基于函数实现用户认证,要求:
- 写函数,读取的用户信息并构造为字典(用户信息存放在
files/user.xlsx
文件中) - 用户输入用户名和密码,进行校验。(且密码都是密文,所以,需要将用户输入的密码进行加密,然后再与Excel中的密文密码进行比较)
import hashlib
from openpyxl import load_workbook
def get_user_dict():
user_dict = {}
wb = load_workbook("user.xlsx")
sheet = wb.worksheets[0]
for row in sheet.rows:
user_dict[row[1].value] = row[2].value
return user_dict
def encrypt(origin):
origin_bytes = origin.encode(‘utf-8‘)
md5_object = hashlib.md5()
md5_object.update(origin_bytes)
return md5_object.hexdigest()
user = input("请输入用户名:")
pwd = input("请输入密码:")
通过加密算法得出最终的密文
encrypt_pwd = encrypt(pwd)
通过函数get_user_dict()从excel中解析出用户名和密码数据放入user_dict字典中
user_dict = get_user_dict()
通过输入的用户名去系统的用户名密码配置文件中查找对应的密码
db_pwd = user_dict.get(user)
比较用户输入的密码与系统配置文件中的密码是否一致,一致则输出正确,否则错误
if db_pwd == encrypt_pwd:
print("输入正确")
else:
print("输入错误")
原文:https://www.cnblogs.com/sweetydm/p/14800155.html
内容总结
以上是互联网集市为您收集整理的Python之函数基础全部内容,希望文章能够帮你解决Python之函数基础所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。