多图速成Python基础语法下篇【万字建议收藏】_print(2024<2024or2024&gt)(1)

在这里插入图片描述

感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:

① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 数学运算操作符
  • 比较操作符
  • 赋值操作符
  • 按位操作符
  • 逻辑操作符
  • 成员识别操作符
  • 身份识别操作符

基础数学运算演示

这种非常常见,比如进行两个数字运算,或者数学运算表达式。直接复制下面的代码运行:

#!/usr/bin/env python
# -\*- coding: utf-8 -\*-
# @Time : 2021/10/4 9:49 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : user\_input.py.py
# @Project : hello


x = 3
y = 333
print("x %s, y %s" % (x, y))
print("x+y= %s" % (x + y))
print("x-y= %s" % (x - y))
print("x\*y= %s" % (x \* y))
print("y/x= %s" % (y / x))
print("y//x= %s" % (y // x))
print("5/2= %s" % (5 / 2))
print("5//2= %s" % (5 // 2))
print("y%" + ("x= %s" % (y % x)))
print("x%" + ("y= %s" % (x % y)))
print("y\*\*x= %s" % (y \*\* x))

这里我们看到python进行指数型运算的支持非常好,两个‘*’就能进行指数运算了。

下面看看运行结果:

在这里插入图片描述

比较操作符

比较操作非常直白,就是对比左右两个数字/对象,判断是否满足给定比较关系(大于,小于,等于等等)

#!/usr/bin/env python
# -\*- coding: utf-8 -\*-
# @Time : 2021/10/4 9:49 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : operator.py
# @Project : hello

print("1 > 2 ? %s" % (1 > 2))
print("1 < 2 ? %s" % (1 < 2))
print("1 == 2 ? %s" % (1 == 2))
print("1 == 2 ? %s" % (1 != 2))
print("\"1\" == \"1\" ? %s" % ("1" == "1"))
print("1 >= 2 ? %s" % (1 >= 2))
print("1 <= 2 ? %s" % (1 <= 2))

直接复制运行结果:

在这里插入图片描述

赋值操作符

赋值操作符,顾名思义就是,一边操作一边赋值。

非常简单,无法就是比前面的运算操作多了一次赋值,代码写起来简化了一些。

y **= 3 #不实用赋值操作符, y = y ** 3

我们看看下面的代码:

#!/usr/bin/env python
# -\*- coding: utf-8 -\*-
# @Time : 2021/10/4 9:49 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : operator.py
# @Project : hello


x = 3
print("x %s" % x)
x += 3
print("+=3 %s" % x)
x -= 3
print("-=3 %s" % x)
x \*= 3
print("\*=3 %s" % x)
x \*\*= 3
print("\*\*=3 %s" % x)
x /= 3
print("/=3 %s" % x)
x = 3
x //= 3
print("//=3 %s" % x)
x = 10
x %= 3
print("%"+"= %s" % x)

运行结果:

在这里插入图片描述

位操作符

在计算机内数据都是二进制存储的。

比如数字8(十进制),存储起来是:0000…0000100(就是30位的其他位都是0,除了第三位是1,表示2的三次方)。

所以左移动一位就是乘以2,或者右移动除以2。

我们看看下面的代码:

#!/usr/bin/env python
# -\*- coding: utf-8 -\*-
# @Time : 2021/10/4 9:49 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : operator.py
# @Project : hello
import sys

data = 8  # 二进制:1000
print("与运算:8 & 1 ? %s" % (data & 1))  # 1000 & 0001 = 0
print("或运算:8 | 1 ? %s" % (data | 1))  # 1000 | 0001 = 1001
print("异或运算:8 ^ 2 ? %s" % (data ^ 2))  # 1000 ^ 0010 = 1010
print("异或运算:8 ^ 8 ? %s" % (data ^ data))  # 1000 ^ 1000 = 1010
print("按位取反运算:~8 ? %s" % (~data))  #~x = -x - 1
print("按位取反运算:~ -8 ? %s" % (~ -data))  #~ -x = -x - 1
print("原数的二进制格式输出: %s" % bin(data & 0xFFFFFFFF))
print("取反之后的二进制格式输出: %s" % bin(~data & 0xFFFFFFFF))
print("左移位运算: 8 <<2 ? %s" % (data << 2))
print("右移位运算: 8 <<2 ? %s" % (data >> 2))
print("8 & 1 ? %s" % (data & 1))
print("8 & 2 ? %s" % (data & 2))
print("8 & 8 ? %s" % (data & 8))

运行结果如下:

在这里插入图片描述

& 表示对应位同时为1则标记结果对应位置为1;
| 表示只要对应位置为1则标记结果对应位置为1。
^ 异或则对应位置同为0/1则标记结果对应位置为0,其他情况为1.
取反,0变成1,1变成0

逻辑操作符

这个非常简单,记住这三个:and, or, not。
用法则是,and / or 需要连结两个表达式。not 则可以在任何表达式前面。

我们直接看代码:

#!/usr/bin/env python
# -\*- coding: utf-8 -\*-
# @Time : 2021/10/4 9:49 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : operator.py
# @Project : hello

expr = 1 > 2
print("expr : ",expr)
print("not expr: ", not expr)
print("and : ", expr and (2 > 3))
print("or : ", expr or (2 > 3))
print("or : ", expr or (4 > 3))

直接看结果:

在这里插入图片描述

成员识别操作符

这个也非常简单,只需要记住两个:in 和 not in。
也就是针对容器类的比如list/tuple/字符串类型的数据,我们使用in或者not in判断某个值是否为该容器的元素。

看看代码

#!/usr/bin/env python
# -\*- coding: utf-8 -\*-
# @Time : 2021/10/4 9:49 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : operator.py
# @Project : hello

data = [1, 2, 3]
print("1 in list %s: %s" % (data, 1 in data))
print("4 not in list %s: %s" % (data, 4 not in data))
data = (1, 2)
print("1 in tuple %s : %s" % (data, 1 in data))
print("4 not in tuple %s : %s" % (data, 4 not in data))
data = "hello world"
print("\"hello\" in string %s : %s" % (data, "hello" in data))
print("\"hello2\" not in string %s : %s" % (data, "hello2" not in data))

查看运行效果:

在这里插入图片描述

身份识别操作符

这个也非常简单,只需要记住两个:is 和 is not。
主要用来判断两个变量是否同个

#!/usr/bin/env python
# -\*- coding: utf-8 -\*-
# @Time : 2021/10/4 9:49 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : operator.py
# @Project : hello

data = [1, 2, 3]
print("data is data %s: %s" % (data, data is data))
other = "hello"
print("%s is data %s: %s" % (other, data, other is data))
print("%s is not data %s: %s" % (other, data, other is not data))
print("\"222\" is data %s: %s" % (data, "222" is data))
print("\"222\" is \"222\" : %s" % ("222" is "222"))

运行效果:

在这里插入图片描述

更多补充:is 在python里面就是判断两个对象是否同个id的(也就是id(object)函数的结果,object的内存地址)。

If条件分支

我们写代码的时候有时候并不想从头到尾执行。

前面介绍了各种操作符,它们都可以用来制作表达式。

然后给条件分支作为判断执行的依据。

如果需要有条件有选择的运行代码,在python里面可以这样:

#!/usr/bin/env python
# -\*- coding: utf-8 -\*-
# @Time : 2021/10/4 9:49 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : ifelse.py
# @Project : hello

data = 1
if data == 1:
    print("data is 1")
else:
    print("data is not 1")

data = 5
if data == 1:
    print("data is 1")
elif data < 10:
    print("data < 10")
else:
    print("data >= 10")


我们先看看运行效果:

在这里插入图片描述
这里我们再回顾抽取如下:

if 条件表达式1:
	这里放满足表达式1情况下运行的代码
elif 条件表达式2:
    如果第二种情况的判断,运行这里的代码
else:
    其他情况,运行这里的代码

这里的elif 分支,和else分支也是可以省略的,最简化的如下:

if 条件表达式1:
	这里放满足表达式1情况下运行的代码

循环重复执行For-Loop

循环的用途,就是让程序不停(或者限定次数)运行指定代码。

比如,让你编程实现1 + 2 + … + 100,求和1逐步累加到100的和。

当然可以编程 1 + 2 + 3 一支写到100,当时如果要求计算到10000呢?

#!/usr/bin/env python
# -\*- coding: utf-8 -\*-
# @Time : 2021/10/4 9:49 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷学委
# @XueWeiTag: CodingDemo
# @File : forloop.py
# @Project : hello

start = 1
n = 100
sum = 0
while start <= n:
    sum = sum + start
    start += 1

print("sum of (1,...,%s) is %s" % (n, sum))

运行结果如下:

(1)Python所有方向的学习路线(新版)

这是我花了几天的时间去把Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

最近我才对这些路线做了一下新的更新,知识体系更全面了。

在这里插入图片描述

(2)Python学习视频

包含了Python入门、爬虫、数据分析和web开发的学习视频,总共100多个,虽然没有那么全面,但是对于入门来说是没问题的,学完这些之后,你可以按照我上面的学习路线去网上找其他的知识资源进行进阶。

在这里插入图片描述

(3)100多个练手项目

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。

在这里插入图片描述

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 29
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值