补充运算符及流程控制
Posted strawberry-cxs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了补充运算符及流程控制相关的知识,希望对你有一定的参考价值。
运算符
1.成员运算符
就是查看某个个体是否在某个群体内
关键字:in(在) , not in(不在)
例:
names_list = [\'kevin\', \'jack\', \'tank\', \'tony\'] print(\'kevin\' in names_list) # True False print(\'aa\' in names_list) 1 print(\'hello\' in \'hellworld\') 2 print(\'ke\' in \'kevin\')
2.身份运算符
比较两个值是否相等
关键字: ==(值是否相等) is(内存编号是否相等)
例:==
s1 = [\'kevin\', \'tank\', \'jack\'] s2 = [\'kevin\', \'tank\', \'jack\'] print(s1 == s2) # True
例:is
print(id(s1)) print(id(s2)) print(s1 is s2) # False
值相等的内存地址不一定相等,内存地址相等的值一定相等。
流程控制
控制事物的执行流程
1.顺序结构
自上而下依次执行
2.分支结构
根据不同的条件执行不同的分支
注意事项:
1、条件都要转为布尔类型判断,根据条件的成立与否,决定是否要执行代码块
2、 条件成立之后,需要执行子代码块,子代码块是要缩进的
3、 只要遇到冒号,下面一行代码必缩进
4、当你的子代码块只有一行的时候,可以不换行,直接写在冒号后面
5、 同属于一个代码块的子代码块,缩进量要一样
6、 不是所有的代码都有子代码块
1.单分支结构
if 条件:条件成立之后要执行的代码块
age = 18 if age < 26: print(\'小姐姐\')
2.双分支结构
if 条件:
条件成立之后要执行的代码块
else:
条件不成立执行的代码块
age = 18 if age < 26: print(\'小姐姐\') else: print(\'认错人了\')
3.多分支结构
if 条件1:
条件1成立之后执行的代码块
elif 条件2:
条件1不成立,条件2成立执行的代码块
elif 条件3:
条件1、条件2不成立,条件3成立之后执行的代码块
else:
以上所有条件都不成立的话,执行的代码块
score = 80 if score >= 90: # elif score >= 80 and score < 90: print(\'优秀\') elif score >= 80: # elif 80<=score<90: print(\'良好\') elif score >= 70: print(\'中等\') elif score >= 60: print(\'及格\') else: print(\'重修\')
练习:
1. 根据不同的身份打印不同的输出信息 kevin:管理员 jason:保洁员 tank:保安 jack:普通人员 username = input(\'请输入你的身份信息:\') if username == \'kevin\': print(\'管理员\') elif username == \'jason\': print(\'保洁员\') elif username == \'tank\': print(\'保安\') elif username == \'jack\': print(\'普通人员\') else: print(\'不存在\')
运行结果:
3.循环结构
言外之意就是重复执行
while 条件:
条件成立之后执行的循环体
while True: # 1. 先让用户输入用户名和密码 username = input(\'username>>>:\') password = input(\'password>>>:\') # password: str---->123 password = int(password) # 只能转数字类型的 # 2. 比较用户名和密码 # 在python中,==比较值大小和类型 # if username == \'kevin\' and password == \'123\': if username == \'kevin\' and password == 123: print(\'登录成功\') else: print(\'登录失败\')
运行结果:
while+break
# while +break count = 0 while count < 3: # 1. 先让用户输入用户名和密码 username = input(\'username>>>:\') password = input(\'password>>>:\') # password: str---->123 password = int(password) # 只能转数字类型的 # 2. 比较用户名和密码 # 在python中,==比较值大小和类型 # if username == \'kevin\' and password == \'123\': if username == \'kevin\' and password == 123: print(\'登录成功\') break # 调出while循环,它是跳出本层循环 else: print(\'登录失败\')
运行结果:
标志位的使用
# 标志位的使用 flag = True while flag: # 1. 先让用户输入用户名和密码 username = input(\'username>>>:\') password = input(\'password>>>:\') # password: str---->123 password = int(password) # 只能转数字类型的 # 2. 比较用户名和密码 # 在python中,==比较值大小和类型 # if username == \'kevin\' and password == \'123\': if username == \'kevin\' and password == 123: print(\'登录成功\') while flag: cmd = input(\'请输入你的指令:\') print(\'正在执行你的指令: %s\' % cmd) \'\'\'如果输入的是q,就退出整个程序\'\'\' if cmd == \'q\': flag = False else: print(\'登录失败\')
php笔记2.0——php中的变量数据类型及转换运算符流程控制
2.1 php中的变量:
定义变量:$变量名称=值;
变量名称:$开头 $之后的第一位必须是字母 $第二位之后可以是字母、数字或者是下划线。习惯上变量名称有实际含义,第二个单词后首字母大写——驼峰命名。
预定义变量:传值中接收数据变量 $_GET 数据量小,不安全,经由http get方式来传递数据
$_POST 数据量大,安全,经由http post方式来传递数据
$_REQUEST $_GET+$_POST,效率低
$_FILES 上传变量,经由http post方式上传文件
会话:$_COOKIE 在客户端保存数据
$_SESSION 在服务器端保存数据
$_SERVER 系统的环境信息
2.2 php8中的数据类型
基本数据类型(标量类型):
字符串 string 必须括在双引号""或者单引号‘‘内。两种引号区别:""中代码会执行,‘‘中代码不会执行,按照普通字符输出。
整形 integer 十进制、八进制、十六进制,不带引号。
浮点型 float
布尔型 boolean 打印的时候,true返回1,false返回空。
复合类型
数组 array
对象 object
特殊类型
资源 resource
空值 null 只声明未赋值的变量,赋""值的变量,unset(变量名称)
var_dump 返回类型和数值
2.3 数据类型转换 (隐式转换)
转换成boolean:true--->1;
以下内容在运算时转换成false:
0或0.0----->false
空字符、空数组、空值----->false
转换成数值型: true--->1,false---->0
字符串带有E或e的将转换成浮点型。
转换成字符串: null---->""
数组---->"array"
对象---->"object"
资源---->"resource#序号"
2.4 运算符
字符串拼接符:拼接符号.
算术运算符:+ - * / %
赋值 := += -= *= /= %= .=
自增自减运算符:$i++ $i--先参加运算,在加减 ++$i --$i先加减,再参加运算
比较运算符:< > >= <= ==等于,只比较值 ===恒等,比较值和类型 != !== <>
逻辑运算符:x&&y x||y !x
注意:!正整数 !负整数 ------>false !0------>true
!非空字符串--->false !"0"----->true !"0.0"----->false
非目运算符:表达式?真执行:假执行
2.5 流程控制
if
if(条件1){
条件1为真时执行
}elseif(条件2){
条件2为真时执行
}……
else{
以上条件都不成立,执行
}
switch
switch(){
case val:执行代码;break;
case val:执行代码;break;
case val:执行代码;break;
……
default:以上条件都不成立时执行;break;
}
区别:if可以嵌套,switch不行。
以上是关于补充运算符及流程控制的主要内容,如果未能解决你的问题,请参考以下文章