菜狗的python之路(二)——与C类比(运算)

由于菜狗本人在大一时有接触一些C语言的基础编程(皮毛),我就以类比的思想,开始对python的编程思想进行初步的、感性的理解。

所谓“巨人”,一方面指的是某区块链韭菜商,经朋友推荐得到了他的一本关于自学python的书 Github链接,白话文较为易懂,方便我进行类比。

当然,还有最为权威的官方教程。Python Tutorial

接下来我的绝大部分瞎胡扯 思考和讨论,都跟上面两个教程有着脱不开的关系

  • 从结构上来看,一切的计算机程序,都由且只由两个最基本的成分构成:
    1、运算(Evaluation)
    2、流程控制(Control Flow)

那么就从运算开始

运算

1.布尔运算

计算器和计算机都是电子设备,但,计算机更为强大的原因,用通俗的说法就是它 “可编程”(Programable) —— 而所谓可编程的核心就是_布尔运算_及其相应的流程控制(Control Flow);没有布尔运算能力就没有办法做_流程控制_;没有流程控制就只能 “按顺序执行”,那就显得 “很不智能”……

和C语言输出0或1的逻辑返回值不同,Python输出True和False(严格区分大小写)
  • 逻辑&布尔运算符

一、除了等于、大于、小于之外,Python 还有一个逻辑操作符,in'a' in 'basic'这个表达式 用自然语言描述就是:
“‘a’ 存在于’basic’ 这个字符串之中吗?”(属于关系)

二、较为直白地,Python使用了and、or、not来表示布尔运算符

2.值的运算

在 Python 中每个函数都有_返回值_,即便你在定义一个函数的时候没有设定返回值,它也会加上默认的返回值 None……(请注意 None 的大小写!)

一、多出了幂运算的支持,用**表示,且优先级最高
二、多出了对复数的支持

贴一个书里的有趣小程序:

def f():
    pass
print(f())        # 输出 f() 这个函数被调用后的返回值,None
print(print(f())) # 这一行最外围的 print() 调用了一次 print(f()),所以输出一个 None,
                  # 而后再输出这次调用的返回值,所以又输出一次 None

输出结果是:
None
None
None

没有就是没有(None),也不给你胡言乱语,函数嵌套目前显得也很简洁。

3.字符串运算

在pycharm的白给课程中,我见识到了python在处理字符串上的强大(有可能是C语言学的太菜没发现)

针对字符串,有三种操作:
拼接:+ 和 ’ '(后者是空格)
拷贝数乘:*
逻辑运算:in、 not in;以及, <、<=、>、>=、!=、==

3.a.列表运算

列表是字符串的高维形式,遵循同样的运算法则

其余数值类型的运算暂且略过

发布了6 篇原创文章 · 获赞 2 · 访问量 535

猜你喜欢

转载自blog.csdn.net/u010870244/article/details/96147973