Day01-基础数据类型/用户交互/流程控制之-if
1.基础数据类型
什么是数据类型
我们人类可以很容易的分清数字与字符的区别,但是计算机并不能,计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,1是数字,“汉”是文字,否则它是分不清1和‘汉’的区别的,因此,在每个编程语言里都会有一个叫数据类型的东西,其实就是对常用的各种数据类型进行了明确的划分,你想让计算机进行数值运算,你就传数字给它,你想让他处理文字,就传字符串类型给他。Python中常用的数据类型有多种,今天我们先说3种, 数字、字符串、布尔类型。
int(整数型)
在32位机器上,整数的位数为32位,取值范围为-231~231-1,即-2147483648~2147483647。 在64位系统上,整数的位数为64位,取值范围为-263~263-1,即-9223372036854775808~9223372036854775807。 除了int之外, 其实还有float浮点型, 复数型
所有可以进行 + - * // % ** 整数,都可以称之为整型数据型。
i = 1
i1 = 2
i2 = i * i1
print(i2)
str(字符串型)
在Python中,加了引号的字符都被认为是字符串!
字符串的三种形式
s1 = '单引号的字符串'
s2 = "双引号的字符串"
s3 = '''三引号的字符串'''单引号和双引号配合使用
content = 'I am Dylan, 18 year old'
content = "I'm Dylan, 18 year old" # 因为字符串中已经有一个单引号了,所以用双引号区分开。三引号:换行的字符串
Ps.多行字符串必须用多引号
msg = '''
我可以换行
多少行都行
'''
print(msg)
# 打印结果如下:
我可以换行
多少行都行字符串拼接
字符串的相加 (两个字符串用+号相连,可以做到无缝拼接)
#相加其实就是简单拼接
s1 = 'Dylan'
s2 = 'nb'
print(s1 + s2) # 打印结果:Dylannb字符串的相乘(只能与数字相乘)
#相乘其实就是复制自己多少次,再拼接在一起
s1 = 'Dylan'
print(s1 * 8) # 打印结果:DylanDylanDylanDylanDylanDylanDylanDylan
Bool(布尔值)
布尔类型很简单,就两个值 ,一个True(真),一个False(假), 主要用记逻辑判断。
True(真)
条件成立就是 True,即真
print(3 > 2) # 打印结果:True
False(假)
条件不成立就是 False,即假
print(1 > 2)# 打印结果:False
判断变量指向的是什么数据类型? type()
当你不知道该数据是什么类型的时候,可以用 type()来判断一下。
s1 = '100'
s2 = 100
print(s1,type(s1))# 打印结果:100 <class 'str'>
print(s2,type(s2))# 打印结果:100 <class 'int'>
2.用户交互
intput
将用户输入的内容赋值给变量
input: 出来的全部都是字符串类型
username = input('请输入用户名:')# 将用户输入的内容赋值给 username 变量
password = input('请输入密码:')# 将用户输入的内容赋值给 password 变量
print(username,type(username))# 打印输入的内容,并显示数据类型
print(password,type(password))# 打印输入的内容,并显示数据类型
3.流程控制之--if
假如把写程序比做走路,那我们到现在为止,一直走的都是直路,还没遇到过分叉口,想象现实中,你遇到了分叉口,然后你决定往哪拐必然是有所动机的。你要判断那条岔路是你真正要走的路,如果我们想让程序也能处理这样的判断怎么办? 很简单,只需要在程序里预设一些条件判断语句,满足哪个条件,就走哪条岔路。这个过程就叫流程控制。
单分支 if
结构
if 条件:
满足条件后要执行的代码示例
if 2 < 1:
print(666)
print(333)
print(222)
# 这段代码的打印结果是 222,因为2<1不为True,所以不执行 if 语句下面的代码。
双分支 if ...else
结构
if 条件:
满足条件执行代码
else:
if条件不满足就走这段示例
age = input('请输入年龄:')
if int(age) > 18:
print('恭喜你,成年了')
else:
print('小屁孩儿')多分支 if ..elif..elif..else
结构
if 条件:
满足条件执行代码
elif 条件:
上面的条件不满足就走这个
elif 条件:
上面的条件不满足就走这个
elif 条件:
上面的条件不满足就走这个
else:
上面所有的条件不满足就走这段示例
num = int(input('猜点数:'))
if num == 1:
print('洗碗')
elif num == 3:
print('扫地')
elif num == 2:
print('啥也不干')
else:
print('全都你干....')
print('if 语句外的内容')嵌套的 if
结构
if 条件:
满足就走这个里面的 if
if 条件:
上面的条件不满足就走这个
else:
上面的条件不满足就走这个
else:
第一个 if 条件不满足就走这段示例
username = input('请输入用户名:')
password = input('请输入密码:')
code = 'qwer'
your_code = input('请输入验证码:')
if your_code == code:
if username == 'taibai' and password == '123':
print('登录成功')
else:
print('账号或者密码错误')
else:
print('验证码错误')
Day01-基础数据类型/用户交互/流程控制之-if的更多相关文章
- Python入门 常量 注释 基础数据类型 用户输入 流程控制
Python入门 一.常量 在Python中,不像其他语言有绝对的常量,修改会报错,在Python中有个约定俗成的规定--常量就是将变量名大写. 尽量保持不更改的一种量 , 这个常量有是干什么的呢 其 ...
- python初认识、基础数据类型以及 if 流程控制
python初认识 CPU.内存.硬盘以及操作系统之间的关系 CPU:中央处理器,计算机的逻辑运算单元 硬盘:长期存储数据的地方,断电不会丢失 内存:位于CPU与硬盘之间,缓解高速CPU与低速硬盘之间 ...
- Python入门 .变量 常量 基础数据类型 用户输入 流程控制语句 小练习题
# 2.name = input(“>>>”)通过代码来验证name变量是什么数据类型?--str name = input(">>>") pr ...
- Java04-Java语法基础(三)流程控制
Java04-Java语法基础(三)流程控制 一.数据类型的转换 1.自动转换:在赋值运算中,占字节数大的类型会自动向字节小的类型转换 double d1 = 3.14; int t1 = d1; 2 ...
- 053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结
053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结 本文知识点: 流程控制知识总结 流程控制知识总结 选择结构语句 循环结构语句 ...
- 052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试——debug2 多断点调试程序
052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试--debug2 多断点调试程序 本文知识点: Eclipse下程序调 ...
- 051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试——debug入门1
051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试--debug入门1 本文知识点: 程序调试--debug入门1 程序 ...
- 050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句
050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句 本文知识点:continue语句 continue语句 continue ...
- 049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句
049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句 本文知识点:break语句 break语句 break语句前情回顾 1.swi ...
随机推荐
- Redis面试题详解:哨兵+复制+事务+集群+持久化等
Redis主要有哪些功能? 1.哨兵(Sentinel)和复制(Replication) Redis服务器毫无征兆的罢工是个麻烦事,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制. ...
- 【集训Day1 测试】选择课题
选择课题(bestproject) [问题描述] Robin 要在下个月交给老师 n 篇论文,论文的内容可以从 m 个课题中选择.由于课题数有限,Robin 不得不重复选择一些课题.完成不同课题的论文 ...
- Matlab查看本机IP地址---xdd
复制粘贴于http://www.matlabsky.com/thread-28597-1-1.html [s, r]=system('ipconfig') % r=regexp(r,'IP Addre ...
- CSS中如何使用背景样式属性,看这篇文章就够用了
css背景样式属性介绍 背景样式就是自定义HTML标签的背景颜色或背景图像. 背景属性说明表 属性名 属性值 描述 background-color #f00.red.rgb(255,0,0) 设置背 ...
- 当linux突然修改任何设置都没办法联网时的绝对有效解决办法
以下操作为重新启动虚拟网卡的相关配置,初始化并重启虚拟网卡,对目前的配置不会有任何影响 打开终端,依次输入以下内容:– sudo service network-manager stop– sudo ...
- Maven设置http代理
背景:有时候公司处于安全因素的考虑,需要通过代理访问因特网,这种情况需要为Maven设置htpp代理 设置步骤如下: 1 首先确认自己无法访问外网公共的中央仓库(可通过ping repo1.maven ...
- Chapter 02—Creating a dataset(Part3-补充材料Stat/Transfer)
Stat/Transfer:在电子表格(worksheet),数据库(database),统计包(statistical package)间进行数据转换,具有简单高效的特点. 资料来源于:http:/ ...
- 线程池&进程池
线程池&进程池 池子解决什么问题? 1.创建/销毁线程伴随着系统开销,如果过于频繁会影响系统运行效率 2.线程并发数量过多,抢占系统资源,从而导致系统阻塞甚至死机 3.能够刚好的控制和管理池子 ...
- 在docker中加入加速器的方法
前提条件:在一台Linux中安装好了docker 目的:在docker中加如这入个加速器的目的,是让docker pull 时能速度快一点,但是好像docker push速度并没有加快. 换句话说,就 ...
- kubectl exec 在kubelet中的处理流程
基于kuebrnetes v1.17 简单来说,一个完整的streaming请求如下: 客户端 kubectl exec -i -t ... kube-apiserver 向 Kubelet 发送流式 ...