博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 常用函数
阅读量:4973 次
发布时间:2019-06-12

本文共 1463 字,大约阅读时间需要 4 分钟。

一、自定义函数

1、使用 def 关键字定义函数

def 函数名([参数名...]):    函数体(代码块)  return 表达式函数名()

  注意:函数须先定义,后使用

  没有 return 语句的函数定义,Python 都会在末尾加上 return None

 

二、系统函数

print(var1,var2,sep='分隔符',end='结束符')   # 打印 len(string)  # 字符长度,py3不区分中英文 type(var)   # 查看数据类型 input('msg') # 提示用户输入信息

 

三、变量作用域

  1、全局作用域(函数外的变量)

  2、局部作用域(函数内的变量,可以调用全局变量

1、局部变量不能在全局作用域内使用2、局部作用域不能使用其他局部作用域内的变量3、全局变量可以在局部作用域中读取4、名称相同的局部变量和全局变量(尽量避免相同)

  3、使用 global 关键字来声明调用的是全局变量

有 4 条法则,区分变量是局部还是局作用域:1.变量在全局作用域中使用,全局变量。2.函数中,变量使用 global 语句,全局变量。3.函数内变量没有用在赋值语句中,全局变量。4.否则,变量用于函数中的赋值语句,局部变量。

  

四、异常处理

try:    rst = 10 / 5except ZeroDivisionError:    print('Error: Invalid argument.')

 

五、案例

1、Collatz 序列

  分析条件:编写一个名为 collate()的函数,它有一个名为 number 的参数。如果参数是偶数,那么 collate()就打印出 number // 2,并返回该值。如果 number 是奇数,collate()就打印并返回 3 * number + 1。然后编写一个程序,让用户输入一个整数,并不断对这个数调用 collate(),直到函数返回值1(令人惊奇的是,这个序列对于任何整数都有效,利用这个序列,你迟早会得到 1!既使数学家也不能确定为什么。你的程序在研究所谓的“collate序列”,它有时候被称为“最简单的、不可能的数学问题”)。

  

def collate(number):    rst = number % 2    if rst == 0:        print('number // 2 = ' + str(number // 2))        return number // 2    else:        print( '3 * number + 1 ' + str(3 * number + 1))        return 3 * number + 1num = int(input('Number:'))i = 0while True:    num = collate(num)    if 1 == num:        break    i += 1print('循环次数:'+str(i))

  

2、验证用户输入的是否是整数

isNumber = input('Number:')try:    number = int(isNumber)    print(number)except ValueError:    print('类型不正确')

  

 

转载于:https://www.cnblogs.com/tdy061/p/8794053.html

你可能感兴趣的文章
分布式系统事务一致性解决方案
查看>>
树梅派中文输入法支持
查看>>
[Git] 005 初识 Git 与 GitHub 之分支
查看>>
使用Analyze 和Instruments-Leaks分析解决iOS内存泄露
查看>>
Vue.js的入门
查看>>
【自定义异常】
查看>>
pip install 后 importError no module named "*"
查看>>
一些疑惑
查看>>
Codeforces Round #413 A. Carrot Cakes
查看>>
Linux(Ubuntu16.04)下添加新用户
查看>>
Windows c++应用程序通用日志组件(组件及测试程序下载)
查看>>
openstack dpdk
查看>>
【BZOJ2333】【SCOI2011】棘手的操作 treap合并
查看>>
【BZOJ1013】【JSOI2008】球形空间产生器 高斯消元
查看>>
java泛型
查看>>
基本配置2-被忽悠进了CentOS 6
查看>>
MFC的组合框(ComboBox)控件切换下拉样式
查看>>
WPF 中依赖属性的继承(Inherits)
查看>>
HttpPost works in Java project, not in Android
查看>>
JavaScript摘要
查看>>