首页 技术 正文
技术 2022年11月15日
0 收藏 916 点赞 3,368 浏览 2911 个字

1、形参和实参

def MyFun(x):
return x ** 3y = 3
print(MyFun(y))

  x为形参,y为实参.

2、函数文档

在函数内用单引号引起来的一段文字,在调用函数时不会输出,写函数文档可以帮组他人理解,可以用help(函数名)查看或者函数名.__doc__打印函数文档

>>> def MyFirstFunction(name):
'函数文档在函数定义的最开头部分,用不记名字符串表示'
print('I love you!')

3、参数

1)关键字参数

  在调用参数时戴上参数名字去指定具体调用哪个参数,可以忽略参数的顺序调用函数

>>> def SaySome(name, words):
print(name + '->' + words)>>> SaySome(words='让编程改变世界!', name='you')

2)默认参数

  赋予形参默认值,在没给函数参数时,使用默认值

3)收集参数:搞不清要用多少参数时用收集参数,当其后还需要其他参数时需使用关键字参数

def bc(*prama,base=3):
'函数实现将传入的每一个实参倍乘3,可以通过关键字参数改变base值'
for each in prama:
print(base*each) >>> bc(1,2,3,4,5)
3
6
9
12
15>>> bc(1,2,3,4,5,base=5)
5
10
15
20
25

4、求水仙花数

def Narcissus():
for each in range(100, 1000):
temp = each
sum = 0
while temp:
sum = sum + (temp%10) ** 3
temp = temp // 10 # 注意这里用地板除 if sum == each:
print(each, end='\t')print("所有的水仙花数分别是:", end='')
Narcissus()
def ncs(low=0,high=1000):
for each in range(low,high):
if (each//100)**3+(each%100//10)**3+(each%10)**3==each:
print(each)

5、编写统计长度为2的子字符串长度在目标字符串内的个数

def findStr(desStr, subStr):
count = 0
length = len(desStr)
if subStr not in desStr:
print('在目标字符串中未找到字符串!')
else:
for each1 in range(length-1):
if desStr[each1] == subStr[0]:
if desStr[each1+1] == subStr[1]:
count += 1 print('子字符串在目标字符串中共出现 %d 次' % count)desStr = input('请输入目标字符串:')
subStr = input('请输入子字符串(两个字符):')
findStr(desStr, subStr)
def findstr(dis_str,sub_str):
count=0
if not sub_str in dis_str:
print("目标字符串中未找到子字符串")
else:
for i in range(len(dis_str)-1):
if dis_str[i]+dis_str[i+1]==sub_str:
count+=1
print("子字符串在目标字符串中共出现",count,"次")dis_str = input("请输入目标字符串:")
sub_str = input("请输入子字符串(两个字符):")

6、函数与过程

  函数是有返回值的,过程是无返回值的

严格来说Python里都是函数,没有过程,应为不管函数有没有返回值python都会返回一些东西,无返回时返回一个None对象

>>> def hello():
print('Hello !')>>> temp = hello()
Hello FishC!
>>> temp
>>> print(temp)
None

  python可以返回多个类型不同的值

def mFun():
return '加油','追求自己想要的生活!>>> mFun()
('加油', '追求自己想要的生活!')

7、变量

1)局部变量:函数里的变量

2)全局变量:在函数外的变量

注意:在函数里修改全局变量是无效的,python会新建与全局变量名字相同的局部变量

def fun(var):
var = 1314
print(var, end='')var = 520
fun(var)
print(var)
var = ' Hi 'def fun1():
global var
var = ' Baby '
return fun2(var)def fun2(var):
var += 'I love you'
fun3(var)
return vardef fun3(var):
var = ' 小天使 'print(fun1())Baby I love you
>>> var
' Baby '

不到万不得已不要使用全局变量!用多了容易出BUG啊

8、判断是否是回文联

def palindrome(string):
length = len(string)
last = length-1
length //= 2
flag = 1
for each in range(length):
if string[each] != string[last]:
flag = 0
last -= 1 if flag == 1:
return 1
else:
return 0string = input('请输入一句话:')
if palindrome(string) == 1:
print('是回文联!')
else:
print('不是回文联!')
def elf(x):
x=list(x)
rex=x[:]
rex.reverse()
if rex==x:
print('是回文联!')
else:
print('不是回文联!')x=input("请输入一句话:")
elf(x)

9、统计字符串

def Count(*strs):#estr every str
cstr=0
for estr in strs:
cstr+=1
cnum=0
cchar=0
cempty=0
celse=0
for echar in estr: if echar.isdigit():
cnum+=1
elif echar.isalpha():
cchar+=1
elif echar == ' ':
cempty+=1
else:
celse+=1
print('第%d'% cstr, '个字符串共有:英文字母个%d'%cchar,',数字个%d'%cnum,\
',空格%d个'%cempty,',其他字%d符个'%celse )
def count(*param):
length = len(param)
for i in range(length):
letters = 0
space = 0
digit = 0
others = 0
for each in param[i]:
if each.isalpha():
letters += 1
elif each.isdigit():
digit += 1
elif each == ' ':
space += 1
else:
others += 1
print('第 %d 个字符串共有:英文字母 %d 个,数字 %d 个,空格 %d 个,其他字符 %d 个。' % (i+1, letters, digit, space, others))
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,497
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,910
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,744
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,498
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,137
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,301