2循环,条件语句

if…elif…else循环

单语句(if)

a=90
if a<80:
    print("bveg")
    pass#空语句
print("njfb")

双语句

a=78
if a>75:
    print("jg")
    pass
else:
    print("bvhf")
a=int(input("成绩:"))
if a>90:
    print("A")
    pass
elif a>80:
    print("B")
    pass
elif a>70:
    print("C")
    pass
elif a>60:
    print("D")
    pass
else:
    print("不及格")

语句重点pass不是必需的

猜拳游戏

import random #导入产生随机数的模块
person=int(input("出拳:[1:剪刀 0:石头 2:布]"))
computer=random.randint(0,2)
if person==1 and computer==2:
  print("computer:{}\nwin".format(computer))
elif person == 0 and computer == 1:
  print("computer:{}\nwin".format(computer))
elif person == 2 and computer == 0:
  print("computer:{}\nwin".format(computer))
elif person==computer:
  print("computer:{}\nbalance".format(computer))
else :
  print("computer:{}\nfalse".format(computer))

while循环

猜拳游戏

import random#导入产生随机数的模块
count=1
while count<=5:
    person = int(input("出拳:[1:剪刀 0:石头 2:布]"))
    computer = random.randint(0, 2)
    if person==1 and computer==2:
      print("computer:{}\nwin".format(computer))
    elif person == 0 and computer == 1:
      print("computer:{}\nwin".format(computer))
    elif person == 2 and computer == 0:
      print("computer:{}\nwin".format(computer))
    elif person==computer:
      print("computer:{}\nbalance".format(computer))
    else :
      print("computer:{}\nfalse".format(computer))
    count+=1

99乘法表

row=1
while row<=9:
    col=1
    while col<=row:
        print("%d*%d=%d"%(col,row,col*row),end=" ")
        col+=1
        pass
    print()
    row+=1
    pass

在这里插入图片描述

row=9
while row>=1:
    col=1
    while col<=row:
        print("%d*%d=%d"%(col,row,col*row),end=" ")
        col+=1
        pass
    print()
    row-=1
    pass

在这里插入图片描述

等腰直角三角形

以上连个99乘法表的写法比较类似,没多大需要注意的东西。

row=9
while row>=1:
    col=1
    while col<=row:
        print("%d*%d=%d"%(col,row,col*row),end=" ")
        col+=1
        pass
    print()
    row-=1
    pass

在这里插入图片描述

row=7
while row>=1:
    col=1
    while col<=row:
        print("*",end=" ")
        col+=1
        pass
    print()
    row-=1
    pass

在这里插入图片描述
以上是两个等腰直角三角形,这两个题与99乘法表相似,但关键是必须找到规律,题目自然就迎刃而解。

等腰三角形

row=1
while row<=10:
    j=1
    while j<=10-row:#此处j代表的是每一行左边的空格数
        print(" ",end=' ')
        j+=1
        pass
    k=1
    while k<=2*row-1:#此处k代表的是每一行的*数
        print("*",end=' ')
        k+=1
        pass
    print()
    row+=1

在这里插入图片描述
以上是一个等腰直角三角形,同样的关键是找到规律。

for循环

在介绍for循环前先介绍下range函数:
range 函数生成一个数据集合列表
range(起始:结束:步长:)步长不可为0,不写则步长默认为1。
以下是两个简单的for循环代码:

sum=0
for data in range(1,101):#左包含右不包含
    sum+=data
    print(data,end=" ")
    pass
print()
print(sum)
for data in range(50,201,2):
    print(data, end=" ")

for…else…

我就用的一个代码简单表示下,个人感觉用处不是太大

qi="12252"
sb="nbjrth"
for i in range(3):#此处i的值没有定义默认值为0
    zh=input("输入账号:")
    mm=input("输入密码:")
    if zh==qi and mm==sb:
        print("登录成功")
        break
        pass
    pass
else:
        print("失败")

while…else…

在python中除了有if-else,for-else还有我们的while-else
代码如下,没太大技术含量就不解释了

a=1
while a<=10:
    print(a)
    if a>10:
        break
        pass
    a+=1
else:
    print("nvkr")

猜数游戏

以下是random的用法
random.random():生成一个 0-1 之间的随机浮点数;
random.uniform(a, b):生成[a,b]之间的浮点数;
random.randint(a, b):生成[a,b]之间的整数;
random.randrange(a, b, step):在指定的集合[a,b)中,以 step 为基数随机取一个数;
random.choice(sequence):从特定序列中随机取一个元素,这里的序列可以是字符串,列表,
元组等。

import random
a=random.randint(0,100)
print(a)
times=1
while times<=3:
    b=int(input("请输入猜的数:"))
    if a==b:
        print("恭喜你答对了")
        break
    if a > b:
        print("猜小了")
    if a < b:
        print("猜大了")
        pass
    times+=1
    if times>3:
        c=input("请输入Y或者N:")
        if c=="Y":
            times=1
        if c=="N":
            break

?????此处如果将判断语句换为if c==“Y” or “y”: ; if c==“N” or “n”:就有点问题,语法上行得通,但是。。。。。

一些知识点:

序列:在python中序列就是一组按照顺序排列的值【数据集合】
在python中存在三种内置的序列类型:
字符串,列表,元组
优点:支持索引和切片的操作
特点:第一个正索引为0,指向的是左端,第一个索引为负数的时候,指向的是右端
切片:是指是指截取字符串中的其中一段内容
语法结构 :[start : end : step] step默认为1
常用的字符串的函数:capitalize() 首写字母变大写 endswith/startswith(‘x’) 是否以x结束/开始 find()检测x是否在字符串中 isalnum()判断是否是字母或数字 isalpha()判断是否是字母
isdigit()判断是否是数字 islower()判断是否是小写 join()循环取出所有值用xx去连接 lower/upper大小写转换 swapcase() 大写变小写,小写变大写 lstrip/rstrip/strip 移除左/右/两侧空白
split()切割字符串 title() 把每个单词的首字母变成大写 replace(old,new,count=None) old被换字符串,new替换字符串,count换多少个。无count表示全部替换 count()统计出现的次数

a='bvnkreg'
print(a.find('v'))
print(a.index('nk'))#检测字符串是否包含字符串

切片

b='Hello Wold'
slice[start : end : step] start<=value<end
print(b[2: :2])
print(b[2: :-1])#如果step为负数则是倒序输出
print(b[3:])

list:python中一种数据结构,是一种有序的数据集合
特点:
1:支持增删改查
2:列表中的数据是可以变化的【数据项可以变化,内存地址不会改变】
3:用[]来表示列表类型,数据项之间用逗号来分割,注意:数据项可以是任何类型的数据
4:支持索引和切片来进行操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值