希望系统性学习一门编程语言的朋友请关注我,本专栏后续会持续分享优质文章。
本篇为第五篇介绍Python知识的文章,本篇也开始接触到该门语言的逻辑语法部分,这一部分在编程语言中使用很广泛,小到一段语句,大到一个模块里面都有很多逻辑判断语句,所以很有必要细致的去理解它,并将他的一些常用格式熟记于心,好了开始我们下面的文章。
本节主要编写的为Python语句中if语句的编写要求:
>>>
>>> if 1 > 2:
... print('a')
... else:
... print('b')
...
b
>>>
本段程序为一个简单的 if...else 语句,这个语句主要是进行二个数做大小的判断,得出的结果为一个bool值,if语句在bool值为True时执行打印字符a,为False时执行打印字符b,通过这样一段代码我们就可以大概的看到if语句的执行条件,执行过程等情况。
针对 if 结构语言本专栏做了以下细致的总结,大家可以细致的体会其语法作用。
if语句的基本语法如下所示:
if condition:
# 如果条件为True,则执行这里的代码块
# 可以有多行代码
else:
# 如果条件为False,则执行这里的代码块
# 可以有多行代码
在if语句中,condition是一个表达式,可以是返回True或False的任何东西。
常见的比较运算符包括:
多个条件:
你也可以使用逻辑运算符组合多个条件:
单向分支结构:
if <条件表达式>:
执行语句
...
双向分支结构:
if <条件表达式>:
执行语句
...
else:
执行语句
...
多分支结构:
if <条件表达式>:
执行语句
...
elif <条件表达式>:
执行语句
...
else:
执行语句
...
存在多个elif语句时,Python会按照顺序逐个检查每个条件,执行第一个满足条件的代码块,然后跳过其他条件的检查。如果前面的elif条件满足了,那么后面的elif语句就不会再被执行。
嵌套分支结构:
if <条件表达式>:
if <条件表达式>:
执行语句
...
else:
执行语句
...
else:
if <条件表达式>:
执行语句
...
else:
执行语句
...
注意:每一层的缩进格式要统一,否则可能会导致意想不到的情况。
让优质的技术更自由、开放的传播,我是「技术小剑客」欢迎你的关注和留言。
在 2011 年开始写CSS的时候),从来没有怀疑过这种语言会发生多大的变化。我还记得使用PIE.htc 让 border-radius 适配所有浏览器,我的同事做了一个PHP脚本,生成一个PNG来圆角。
然而,在过去的几年中出现了大量的CSS新特性。其中一些语句也可以被视为if语句,比如@supports样式:
@supports (border-radius: 50%) {
// don't use PIE.htc! {}
}
还有一个经典的媒体查询,已经存在了十多年:
@media (max-width: 1000px) {
//maybe a mobile sized device? {}
}
还有一个新的 camp(),有点不同 :
width: clamp(1000px, 50%, 10vw);
但像这样的行为:
width: clamp(1000px >= (50% >= 10vw));
看得头疼。
但这些都可以说只是 if 语句。如果我们想要一个 if/else 语句,我们需要做这样的事情。
@media (max-width: 1000px) and (prefers-color-scheme: dark) {
//maybe a mobile device in dark mode {}
}
@media (max-width: 1000px) and (prefers-color-scheme: light) {
//maybe a mobile device in light mode {}
}
这很烦人。
但好消息是 在新提议的 @When 特性可以解决我们的烦恼。它这么用:
@when media(max-width: 1000px) {
// 做点什么
}
这很酷,但更酷的是还有 else:
@when media(max-width: 1000px) {
// 移动
} @else {
// 平板
}
机智的你可能也想到了,那肯定还有 else if 了,没错还真有:
@when media(max-width: 1000px) {
// 平板
} @else media(max-width: 700px) { {
// 移动
} @else {
// PC
}
我们也有可能可以这样做:
@when media(max-width: 700px) {
@when (prefers-color-scheme: dark) {
//dark mode on mobile device
} @else {
//light mode on mobile device
}
}
我说 "可能" 是因为该特性还在提案中,但我相信最终会出来的(没出来我把头发染绿)。
目前(20211023),浏览器的支持情况是怎样的?零。少到连 Can I Use 都没有。但随着新的CSS样式不断推出,我相信我们很快就会看到它。
作者:Kenton de Jong 译者:前端小智 来源:codingnconcept 原文:https://kentondejong.medium.com/css-is-finally-getting-if-else-statements-3fabcec72a1f
、流程控制
1. 作用:控制代码的执行顺序
2. 分类
2.1顺序结构:从上到下依次执行代码语句
2.2选择结构:
1. if语句
简单if结构
if(条件表达式){
表达式成立时执行的代码段
}
注意 : 除零值以外,其他值都为真,以下条件为假值false
if(0){}
if(0.0){}
if(""){} //空字符串
if(undefined){}
if(NaN){}
if(null){}
特殊写法 : { }可以省略,一旦省略,if语句只控制其后的第一行代码
2. if - else结构:
if(条件表达式){
//条件成立时执行
}else{
//条件不成立时选择执行
}
3.多重分支结构:
if(条件1){
//条件1成立时执行
}else if(条件2){
//条件2成立时执行
}else if(条件3){
//条件3成立时执行
}...else{
//条件不成立时执行
}
2. switch语句:
语法 :
switch(value){
case 值1 :
//value与值1匹配全等时,执行的代码段
break; //结束匹配
case 值2 :
//value与值2匹配全等时,执行的代码段
break;
case 值3 :
//value与值3匹配全等时,执行的代码段
break;
default:
//所有case匹配失败后默认执行的语句
break;
}
使用时要注意的:
1. switch语句用于值的匹配,case用于列出所有可能的值;只有switch()表达式的值与case的值匹配全等时,才会执行case对应的代码段
2. break用于结束匹配,不再向后执行;可以省略,break一旦省略,会从当前匹配到的case开始,向后执行所有的代码语句,直至结束或碰到break跳出
3. default用来表示所有case都匹配失败的情况,一般写在末尾,做默认操作
4. 多个case共用代码段
case 值1:
case 值2:
case 值3:
//以上任意一个值匹配全等都会执行的代码段
3.循环结构:
作用 根据条件,重复执行某段代码
1. while循环:
定义循环变量;
while(循环条件){
条件满足时执行的代码段
更新循环变量;
}
2. do-while循环:
do{
循环体;
更新循环变量
}while(循环条件);
while 与do-while循环的区别 :
while 循环先判断循环条件,条件成立才执行循环体
do-while 循环不管条件是否成立,先执行一次循环体
3. for 循环
for(定义循环变量;循环条件;更新循环变量){
循环体;
}
循环控制 :
break 强制结束循环
continue 结束当次循环,开始下一次循环 循环嵌套 : 在循环中嵌套添加其他循环
二、函数
函数的作用:封装一段待执行的代码
语法:
//函数声明
function 函数名(参数列表){
函数体
return 返回值;
}
//函数调用
函数名(参数列表);
使用: 函数名自定义,见名知意,命名规范参照变量的命名规范。普通函数以小写字母开头,用于区分构造函数(构造函数使用大写字母开头,定义类)
三,匿名函数
匿名函数:省略函数名的函数。
语法为:
匿名函数自执行
(function (形参){
})(实参);
定义变量接收匿名函数:
var fn = function (){};
fn(); //函数调用
四,作用域
JavaScript 中作用域分为全局作用域和函数作用域,以函数的{ }作为划分作用域的依据
1,全局变量和全局函数
只要在函数外部使用 var 关键字定义的变量,或函数都是全局变量和全局函数,在任何地方都可以访问
所有省略 var 关键字定义的变量,一律是全局变量
2,局部变量/局部函数
在函数内部使用 var 关键字定义的变量为局部变量,函数内部定义的函数也为局部函数,只能在当前作用域中使用,外界无法访问
3,作用域链 局部作用域中访问变量或函数,首先从当前作用域中查找,当前作用域中没有的话,向上级作用域中查找,直至全局作用域
作者:YJ-TX
原文:https://www.cnblogs.com/yjtxin/p/12969576.html
*请认真填写需求信息,我们会在24小时内与您取得联系。