由于一些原因突然中午要出去,早上仅剩一点点时间学习了,要提高效率,fighting~

 

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

今天内容:运算符、表达式、控制流、函数、docstrings

#######################################################################################

运算符&表达式:

1)+(加)   -(减)  *(乘)   /(除)   **(乘方)   //(整除)   %(取模)     <<(左移)  >>(右移)

    & | ^ ~ (按位与或异或取反)   < > >= <= == != (这些都是一样的操作)

    布尔:(ture false 操作):not 布尔非      and 布尔与    or 布尔或

 

2)a=a*3 ---> a*=3   这种写法仍然保留

 

3)运算优先级:(越往后越高,同一行一样)

lambda :Lambda 表达式

if - else :条件表达式

or :布尔“或”

and :布尔“与”

not x :布尔“非”

in, not in, is, is not, <, <=, >, >=, !=, == :比较,包括成员资格测试

(Membership Tests)和身份测试(Identity Tests)。

| :按位或

^ :按位异或

& :按位与

<<, >> :移动

+, - :加与减

*, /, //, % :乘、除、整除、取余

+x, -x, ~x :正、负、按位取反

** :求幂

8

运算符与表达式

47

x[index], x[index:index], x(arguments...), x.attribute :下标、切片、调用、属性引

(expressions...), [expressions...], {key: value...}, {expressions...} :表示绑定或元

组、表示列表、表示字典、表示集合

#############################运算符和表达式 END###########################################

 

三种控制流语句(if、for、while):

   break正常使用。而且该循环后的else都不会执行!!

   continue正常用,跳过当前循环的剩余部分直接到下一次循环

 

     a. if-block+else-block(或elif-block)

     补充一个写法:  guess = int(input('Enter an integer : '))

            内置的 input 函数提供一串打印到屏幕上的字符串并等待用户的输入。一旦我们输入了某些内容并按下键盘上的 enter 键, input() 函数将以字符串的形式返回我们所输入的内容。然后我们通过 int 将这个字符串转换成一个整数并将其储存在变量 guess 中。另一个功能就是数制转换,int(x, base):base默认10,10进制

      注意:Python 中不存在 switch 语句。你可以通过使用 if..elif..else 语句来实现同样的事情(在某些情况下,使用一部字典能够更快速地完成)。

 

      b.while:多了个else块

      else 代码块在 while 循环的条件变为 False 时开始执行——这个开始的时机甚至可能是在第一次检查条件的时候。如果 while 循环中存在一个 else 代码块,它将总是被执行,除非你通过 break 语句来中断这一循环。进入else块后,else里的不会循环,for中同理

      True 和 False 被称作布尔(Boolean)型,你可以将它们分别等价地视为 1 与 0 。

 

      c.for:

      for...in...   对象进行迭代,遍历每个项目,序列中经常使用

      for i in range(1, 5):      range(a,b,c) 从a到b以c为基数递增,含有a,不含有b。c不写时默认为1。注意:range每次只产生一个数,想把产生的全取出需要用到list()。

      list(range(1,5))输出[1,2,3,4]      list(range(1,5,2)) 输出 【1,3】

      for遍历后(即for结束了)可选择使用else执行

      注意和c的区别:

      Python 中的 for 循环和 C/C++ 中的 for 循环可以说是完全不同。C# 程序员会注意到 Python 中的 for 循环与 C# 中的 foreach 循环相似。Java 程序员则会注意到它同样与 Java 1.5 中的 for (int i : IntArray) 无甚区别。

      在 C/C++ 中,如果你希望编写 for (int i = 0; i < 5; i++) ,那么在 Python 你只需要写下 for i in range(0,5) 。正如你所看到的,Python 中的 for 循环将更加简单,更具表现力且更不容易出错。

我的python学习--Day5 随笔 第1张

      

       关于str.find函数的使用:

       find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。

 str.find(str, beg=0, end=len(string))
  • str -- 指定检索的字符串
  • beg -- 开始索引,默认为0。
  • end -- 结束索引,默认为字符串的长度。

 

    这里利用find函数和continue做一个禁闭词排除:

我的python学习--Day5 随笔 第2张      

         写代码真好玩~~

#######################################控制流 END#######################################

 

函数:

1)      def mingzi(a, b=1):

                内容....

      a形参没有值需要用户写入,但是b提供默认值,用户可以不写值

      我的python学习--Day5 随笔 第3张

 

2)   局部参数(local parameter):当你在一个函数的定义中声明变量时,它们不会以任何方式与身处函数之外但具有相同名称的变量产生关系,也就是说,这些变量名只存在于函数这一局部(Local)。这被称为变量的作用域(Scope)。所有变量的作用域是它们被定义的块,从定义它们的名字的定义点开始。

      函数内使用的参数,内外都有可能用同一个参数x,但意义不同,而且也不会相互影响,函数内的局部参数不会影响到函数外,见例子:      我的python学习--Day5 随笔 第4张

       

3    global语句能让你函数中的局部变量即使在函数外也能使用,无论外面是否有同名字的变量。用作global时就不能用作变量,不然会出错,所以用到全局变量的函数不能以此为形参

       但如果global写在外面,那么函数依然需要形参,而且函数内变量还只是个local parameter,如图:

我的python学习--Day5 随笔 第5张

 

      4)关键字参数:平时我们使用函数都是按位置赋值给参数,如hanshu(a,b=10,c=12)中,我们使用hanshu(1,2,3)或hanshu(1,2),如何做到不写b直接写c或者先写c再写a呢?

          答案:hanshu(c=1,a=2),这就是利用参数名给参数赋值

 

      5)不定参数:元组和字典参数可以数量不定,只要元组形参前加一个*,如*number;字典形参前加两个*,如**phonebook

     

      6)return :在函数中常用。函数默认最后有一个return none,return后不加东西也是none。none在 Python 中一个特殊的类型,代表着虚无。举个例子, 它用于指示一个变量没有值,如果有值则它的值便是 None(虚无)。

 

     7)文档字符串(DocStrings):它能够帮助你更好地记录程序并让其更加易于理解。令人惊叹的是,当程序实际运行时,我们甚至可以通过一个函数来获取文档!

         文档字符串也适用于后面相关章节将提到的模块(Modules)与类(Class) 。

          例如:函数中有一个备注:

           '''打印两个数值中的最大数。

 

             这两个数都应该是整数'''

        该文档字符串所约定的是一串多行字符串,其中第一行以某一大写字母开始,以句号结束。第二行为空行,后跟的第三行开始是任何详细的解释说明。在此强烈建议你在你所有重要功能的所有文档字符串中都遵循这一约定。

          如何打印出这个备注?   print(函数名.__doc__)

       可以通过使用函数的 __doc__ (注意其中的双下划綫)属性(属于函数的名称)来获取函数 xxx 的文档字符串属性。只消记住 Python 将所有东西都视为一个对象,这其中自然包括函数

       只需在程序中包含 help(xxx) 就行了。要记住你可以通过按下 q 键来退出 help 。

 我的python学习--Day5 随笔 第6张

########################################函数 END######################################################

 

 

  

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄