python:星座与十二生肖_看序列、操作符与简单语句的使用

我们通过存取星座和十二生肖的操作,学习和掌握序列、操作符与简单语句的使用。以下分为三个部分:内容整理和两个实例(十二生肖、星座查询)。

内容整理

序列

字符串:“abcd”
链表:[0,“abcd”]
元组:(“abc”,“def”)
ps:python中单双引号不区分

序列的基本操作

成员关系操作符: 对象[not]in序列
连接操作符: 序列+序列
重复操作符: 序列*整数
切片操作符: 序列[0:整数]

filter的使用

a=(1,3,5,7)
b=4
list(filter(lambda x: x<b,a))

列表

list.append() 添加元素
list.remove() 移除元素

条件语句:if

if 表达式:
代码块(判断为真时)
elif 表达式:
代码块
else:
代码块

while&for

whlie 表达式:
代码块
for 迭代变量 in 可迭代对象:
代码块
while多与if判断和break配合

for循环语句中的嵌套:

type()可查看变量类型
要习惯使用打印语句

实例(一):十二生肖

记录十二生肖,四种操作符的使用

chinese_zodiac = "猴鸡狗猪鼠牛虎兔龙蛇马羊"
print(chinese_zodiac[0:12])  #切分操作符,连续输出下标从011的内容
print(chinese_zodiac[-1])  #反向输出第一位元素
year=2019
print(chinese_zodiac[year%12])
print('羊' in chinese_zodiac)  #成员关系操作符
print(chinese_zodiac + '十二生肖')   #连接操作符
print('生肖' * 3 )   #重复操作符

for语句、打印语句的使用

for cz in chinese_zodiac:
    print(cz)
for i in range(1,12):
    print(i)
for year in range(2000,2020):
    #print('%s 年的生肖是: %s' %(year,chinese_zodiac [year % 12]))
    print('%s 年的生肖是:' %(year) + chinese_zodiac[year % 12])
    #上两行打印语句效果相同,但注意使用连接符时,应始终让'字符串'保持在前

#以下是输出结果
2016 年的生肖是:猴
2017 年的生肖是:鸡
2018 年的生肖是:狗
2019 年的生肖是:猪

while语句test

import time
num = 5
while True:
   num=num+1
   if num<=15:
       print(num)
       time.sleep(1)#注意若使用continue是跳过当前这一次的循环
   else:
       break

实例(二):星座查询

元组存储星座、以及对应的日期范围

zodiac_name=(u'摩羯座',u'水瓶座',u'双鱼座',u'白羊座',u'金牛座',u'双子座',
            u'巨蟹座',u'狮子座',u'处女座',u'天秤座',u'天蝎座',u'射手座',)
zodiac_days=((1,20),(2,19),(3,21),(4,21),(5,12),(6,22),
            (7,23),(8,23),(9,23),(10,23),(11,23),(12,23))     #元组嵌套

input、filter、list、len关键字的使用

#用户输入月份和日期
month=int(input('请输入月份:'))
day=int(input('请输入日期:'))
zodiac_day=list(filter(lambda x: x<=(month,day),zodiac_days))
zodiac_len=len(list(zodiac_day))%12
print(zodiac_day)
print(zodiac_name[zodiac_len])

#以下是输出结果
请输入月份:4
请输入日期:6
[(1, 20), (2, 19), (3, 21)]
白羊座

用for循环实现filter功能(逻辑并不完整,只为演示)

#循环遍历
for zd_num in range(len(zodiac_days)):
    if month>12 or month<1 or day<1 or day>31:
        print('请重新输入正确的月份与日期!')
        break
    elif zodiac_days[zd_num] >= (month,day):
        # print('您的星座是:%s' %(zodiac_name[zd_num]))
        print('您的星座是:' + zodiac_name[zd_num])
        break
    elif month == 12 and day > 23:
        print(zodiac_name[0])
        break

#以下是输出结果
请输入月份:12
请输入日期:25
摩羯座

请输入月份:13
请输入日期:1
请重新输入正确的月份与日期!
  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值