【python005-数据类型】

时间:2023-03-09 19:13:21
【python005-数据类型】

数据类型

一、字符串的相加是拼接,数字的相加是求和

二、python的数值类型:整形,浮点型,e记法,布尔类型

>>> 1.2e4
12000.0
>>> 1.2e-4
0.00012

---e记法就相当于是10的n次方,比如e4<==>10的4次方

三、类型转换:类型之间的转换直接在原有类型前面加上类型符号,

如:>>> a = '520'
>>> b=int(a)
>>> b
520

-------------------
>>> b=15.8
>>> a=int(b)
>>> a
15
--浮点型直接转换成整形,是直接把小数点后面的内容舍去

四、获得关于类型的信息

1、type()和isinstance()

五、
s.isalnum()  所有字符都是数字或者字母,为真返回 True,否则返回 False。
s.isalpha()   所有字符都是字母,为真返回 True,否则返回 False。
s.isdigit()     所有字符都是数字,为真返回 True,否则返回 False。
s.islower()    所有字符都是小写,为真返回 True,否则返回 False。
s.isupper()   所有字符都是大写,为真返回 True,否则返回 False。
s.istitle()      所有单词都是首字母大写,为真返回 True,否则返回 False。

s.isspace()   所有字符都是空白字符,为真返回 True,否则返回 False

五、练习题:

1、写一个程序,判断给定的年份是否为闰年(能被4整除但不能被100整除,或者能被400整除的都是闰年)

代码设计思路:

a、输入的内容必须是数字,不能是字符串等其他类型,此时就用到了s.isdigit()

b、两个判断条件

temp=input("请输入一个年份:")
#限制输入的内容必须是数字
while not temp.isdigit():
    temp = input("输入错误请输入一个整数:",end = " ")
#两个判断
year = int(temp)
if (year == int(year/400)):
    print(temp + "是润年!")
else:
    if (year == int(year/4)) and (year != int(year/100)):
        print(temp + "是闰年!")
    else:
        print(temp + "不是闰年!")
2、再次改进小游戏:当用户输入错误类型的时候,及时提醒用户重新输入,防止程序崩溃

import random  #导入random函数
secret = random.randint(1,10)  #随机从1到10之间取数字
times = 3   #设置三次机会
guess =0    #初始化guess

print('猜一下尘封心里面想的数字是几:',end = " ")

while (guess!=secret)and(times>0): #介入循环
    temp = input()
    #判断输入错误的数据类型,给予提醒并重新输入
    if temp.isdigit():
        guess = int(temp)
        if(guess == secret):
            print("恭喜你,猜对了!")
        else:
            if(guess > secret):
                print("大了,大了~~")
            else:
                print("小了,小了~~")
            if times > 1:
                print("再试一次吧:", end = " ")
            else:
                print("机会用完了!")
    else:
        print("输入的数据类型错误,请重新输入:",end = " ")

times = times - 1
print("游戏结束!!!")