双色球小程序
第一种:
import random
list1 = [] i = 0 while i < 6: myrandom = random.randint(1,33) i += 1 if myrandom not in list1: list1.append(myrandom) else: i -= 1 list2 = random.randint(1,16) print(list1,list2)第二种:
while bag: rednum=random.randint(1,33) if rednum in myli: continue elif myli.__len__()==6: break else: myli.append(rednum) for num in myli: print(num,end=" ") bluenum=random.randint(1,16) print("\t",bluenum)
函数:定义和调用
def 函数名 (参数列表):
函数体
return XXX
如; 定义 def test1():
print("hello")
调用 tert1()
结果 hello
定义 def add(a,b):
print(a+b)
调用 add(2,3)
结果 5
一个简单的计算器:
def jia(a,b):
print(a+b)
def jian(a,b):print(a-b)
def chen(a,b):print(a*b)
elif option == 2:def chu(a,b):print(a/b)
def jsq():
option = int(input("请输入运算符:1+,2-,3*,4/"))
num1 = int(input("请输入第一个数:"))
num2 = int(input("请输入第二个数:"))
if option == 1:
jia(num1.num2)jian(num1,num2)
elif option == 3:
chen(num1,num2)
else:
chu(num1,num2)
while True:
jsq()
tag = input("您是否继续:y/n")
if tag == "n" and tag == "N"
break
带返回值的函数def add1(a,b):return a+bsum = add1(2,3)print("{0},{1}的和是{2}".format(2,3,sum))带返回值,这样输出的时候回更加灵活函数里的参数:
可变参数:def calc(*numbers): # *, 将参数归纳为一个元组 如果有混合参数时,可变参数要放到最后。如 calc(a,*numbers)
sum = 0 它会把第一个参数赋值给a
for n in numbers;
sum = sum + n * n
return sum
calcsum = calc(1,2,3,4,5)
print(calcsum)
<------------------------>
mytuple = (2,3,4,5) # 赋值的时候还可以更加灵活
calcsum = (1,*mytuple)# 此处*代表将元组中的元素依次取出
关键字参数 **XX , 可以不传参数,如果要传必须是键值对的,可以传多个
def person(name,age,**bb)
person('Frank','34')
person('Frank','34',cith='beijing')
person('Frank','34',gender='M',cith='beijing')
<---------------------------->
mydic = {"name1":"jack","age1":"35"}
person('Frank','34',**mydic) 关键字参数传参的几种方法
默认参数
def num(age=None):
print(age)
num(34)
def num1(name,age=None):
print(name,age)
num1("zhangsan",age="34")
<------------------------------>
num("zhangsan","34") 默认参数的几种传参方法