Python第二天数据类型&条件分支

70 阅读5分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

数据类型

变量

这里解释一下变量

打个比方

name是变量名称

123是变量值

书写方式就是

name='123'

这就是一个标准的变量

变量有什么作用呢

name='123'
print(name)

输出结果为123

为什么这里print()打印name

为什么打印的是123

这里我再打一个比喻

我们把变量比作一个技能

游戏里面的技能

print()就类似我们,我们要召唤那个技能我们就把技能名字输入进去就可以了

打比方

name='123'

n='1'

把name的技能比作是123

把n的技能是1

我们现在要用n的技能

n=1
print(n)

这就输出1了

=和==的区别

name='大哥'

name=='路飞'

这里解释一下一个等号和两个等号的区别

一个等号是赋值的意思

就是我们上面说的技能

而两个等号就是等于的意思了

name=='路飞'

name=就等于路飞

那么打个比方就更清晰的了解了

比如中国最伟大的领袖是谁

大家一听就知道是毛主席

所以说

中国最伟大的领袖就==毛主席

字符串

sentence = "多谢曹丞相赠箭!"
print(sentence)
print(sentence)
print(sentence)

输出

多谢曹丞相赠箭!

多谢曹丞相赠箭!

多谢曹丞相赠箭!

字符串的识别特点是

有单引号和双引号

字符串的加法运算

name = '周瑜'
wife = '小乔'
​
print(name + '的夫人是' + wife)
# 输出:周瑜的夫人是小乔

因为 namewife 两个变量存储的字符串和字符串 '的夫人是' 进行加法运算,最终得到字符串 '周瑜的夫人是小乔'

plan = '火攻'
name1 = '周瑜'
name2 = '孔明'# 这是老师写好的示例,能够打印出周瑜的计策
print(name1 + '的计策是' + plan)
​
# 请仿照示例将下方 ??? 替换成正确代码,打印出孔明的计策
print(name2 + '的计策是' + plan)

整数

age = 33

因为 Python 是能理解所有的整数,所以整数是不需要加引号的,如果你给整数加了引号,那它就会变成字符串。

运算符含义举例
+2+1=3
-3-1=2
*1*1=1
/1/2=0.5
%取余3%2=1
//隧法 商向下取隧7//2=3
**乘方3**2=9

浮点

整数是没有小数点的数字,与此相对,浮点数则是带小数点的数字,比如温度、里程、体重等使用浮点数类型。下面打印的三个值都是浮点数:

print(36.5)
print(-5.3)
print(1.0)

type

type() 函数来查看数据的类型。

cprint(type('hi'))
# 输出:<class 'str'>print(type(666))
# 输出:<class 'int'>print(type(3.14))
# 输出:<class 'float'>

可以看到,type() 函数返回的内容是 <class 'xxx'> 这样的格式,分别对应着不同的格式。

str 表示字符串类型

int 表示整数类型

float 表示浮点数类型。

name = 7
age = '33'
degree = 36.5
​
print(type(name))
print(type(age))
print(type(degree))

输出结果为

<class 'int'>

<class 'str'>

<class 'float'>

类型转换

str()将其他数据类型转换成字符串
int()将其他数据类型转换成整型
float()将其他的数据类型转换成浮点数
num = 100
print('杖责黄盖' + str(num) + '军棍')
# 输出:杖责黄盖100军棍

经过 str() 函数进行类型转换后,整数 100 变成了字符串 '100',现在它俩是“一路人”了,自然可以拼接在一起和平相处了。

title = '赤壁之战'
year = 208
place = '湖北省赤壁市'
status = '孙刘联军5万,曹军20万'
result = '孙刘联军胜利,曹军伤亡过半'print(title)
print('时间:' + str(year))
print('地点:' + str(place))
print('参战方兵力:' + str(status))
print('结果:' + str(result))

输出结果

赤壁之战

时间:208

地点:湖北省赤壁市

参战方兵力:孙刘联军5万,曹军20万

结果:孙刘联军胜利,曹军伤亡过半

# 计算去某乐福需要多少钱
MarketFU = 4+46+55+174+123
# 计算去某尔玛需要多少钱
MarketMA = 0.85*(43+48+188)+152+7print('去某乐福买需要花费'+str(MarketFU)+'元')
print('去某尔玛买需要花费'+str(MarketMA)+'元')

输出

去某乐福买需要花费402元

去某尔玛买需要花费396.15元

分支

if...else...语句

skill = '跑'
if skill == '跑':
  print('升入大学,成为橄榄球队主力!')
else:
  print('无法升入大学,过着不为人知的生活')

这里的意思就是

当skill是等于跑的时候就输出

升入大学,成为橄榄球队主力

如不是跑就输出

无法升入大学,过着不为人知的生活

input弹窗

status = input('请输入阿甘妈妈的身体状况,dying 或 healthy')
if status == 'dying':
  print('你不用惊慌,\n死亡是生命的一部分,是我们注定要面对的。\n我不知道为什么,但我注定要做你的妈妈,我就尽力做好。\n\n我相信你能实现自己的命运。\n你要凭着上帝所给予的做到最好。\n\n你要弄明白你的命运是什么。\n人生就像一盒巧克力,\n你永远不知道拿到的下一颗是什么。')
else:
  print('只要你需要,我就在这里。')

input类型

answer = int(input('秋香的生日是8月几号?'))
if answer == 15:
  print('答对了,我同意这门亲事')
else:
  print('生日都说错了?秋香不能嫁给你')

输出

答对了,我同意这门亲事

但是如果没有int

就会输出

生日都说错了?秋香不能嫁给你

终结

a=float(input('体重'))
b=float(input('身高'))
​
​
c = a / (b*b)
if c<18.5:
  print('轻')
else:
  if c<23.9:
    print('正常')
  else: 
    if c<27.9:
      print('超重')
    else:
      print('肥胖')
    

\