Linxing

导航

python学习第二篇 pass 布尔 字符串 循环语句

Pass

    作用:

        通常用来填充语法空白   pass又名空语句

布尔运算

    运算符:

        not     and     or

  1. 布尔非操作not

语法:

    Not x

作用:

    对x进行布尔取非,如bool(x)为True,则返回False

    2.布尔与操作    and

            语法:x and y

                    注:x,y代表表达式

            作用:

                    优先返回假值对象,当X的布尔值为False时,返回x,否则返回y。

            说明:

                    同时为True,才为True。

                    只要有一个为False,就为False.

练习:

  1. 输入一个月份判断是否是合法月份?
def pd(n):
    x=eval(n)
    try:
        if 0<n<13 and type(x) == int:
            print("合法")
        else:
            print("不合法")
    except:
        print("不合法")
num=(input("请输入一个月份:"))
pd(num)

 

  1. 写一个面试程序,要求是男士而且年龄小于50岁才可以面试?

 

1 def pd(n,m):
2     if n==1 and 0<m<50:
3         print("可以面试")
4     else:
5         print("不能面试")
6 num=int(input("男士输入1,女士输入2:"))
7 mum=int(input("请输入年龄:"))
8 pd(num,mum)

3.布尔或操作 or

     语法:

         X or y

     作用:

         优先返回真值对象,当x为Ture时返回x,否则返回y

 

     同时为False,才为False

     只要有一个为True,就为True

字符串

  1. 作用:

     用来记录文字(文本)信息

  1. 表示方式:

     在非注释中凡是用引号括起来的部分都是字符串 

     ‘’            单引号

     “”            双引号

     ‘’’ ‘’’           三单引号

     “”” “””       三双引号

     空字符串的字面值表示方式:

     ‘hello’

     “hello”

     ‘’’hello ‘’’

     “””hello “””

     单引号和双引号的区别:

         单引号内的双引号不算结束符

         双引号内的单引号不算结束符

         Print(“I am a teacher”)

         Print (“I am “小白””)

     三引号字符串的作用

         三引号字符串可以包含单引号和双引号

         三引号字符串中的换行符是会自动转换为‘/n’

  1. 字符串的运算

     +=

     *= 生成重复的字符串,再用原变量绑定

  1. 比较运算

     运算符:<   <=  >   >=  ==  !=

     比较规则:

         依次按编码进行两两字符进行比较,一但不同,则比较结束,并返回比较结果,当编码值和长度完全相同时,两个字符串相同。

字符串编码转换函数:

     ord(c)返回一个字符C的unicode编码值

     chr(i)返回i这个值对应的字符

in   not in 运算符

    作用:

        In 用于序列,字典,集合中,用于判断某个

        not in 与之相反

字符串的基本操作

    Python字符串是不可以改变的字符序列

  1. 索引取值语法:

字符串[整数表达式]

        正向索引

        反向索引

    切片操作

        作用:从字符串序列中取出相应的元素重新组成一个新的字符串

        语法:

            字符串[a:b(s)]

                注:小括号()括起来的部分代表省略

        说明:

            开始索引是切片开始切下的位置,0代表第一个元素,1代表第二个元素,-1代表最后一个结束索引是切片的终止索引,(但不包含终止点)

            步长是切片每次获取玩当前元素后移动的方向和偏移量

  1. 没有步长,相当于步长为1(默认为1)
  2. 当步长为正整数时,取正向切片:开始索引默认是最后一个元素的下一个位置
  3. 当步长为负整数时,取反向切片:反向切片时,默认的起始位置为最后一个元素,终止位置是第一个元素的前一个位置

 

   

练习

    写程序输入一个字符串,打印字符串中的如下内容

  1. 打印这个字符串的第一个字符
  2. 打印这个字符串的最后一个字符
  3. 如果这个字符串的长度是奇数,打印中间这个字符

 

1 def dy(n):
2     print(n[0])
3     print(n[-1])
4     if len(n)%2==1:
5         x=int((len(n))/2)
6         print(n[x])
7 num=input("请输入一串字符串")
8 dy(num)

 

字符串的格式化表达式

    作用:

        生成一定格式的字符串

    运算符%

    语法格式:

        格式化字符串%参数值

        格式化字符串%(参数1,参数2,参数3,……)

    说明:

        格式化字符串中以%开头的字符串占位符的位置将用参数代替

练习:

  1. 输入三行文字,让这三行文字依次以20个字符的宽度右对齐

如:

     请输入第一行:hello world

     请输入第二行:abcd

     请输入第三行:aaaaaaa

     打印结果如下:

      Hello  world

             Abcd

         Aaaaaaaa

 1 def dq(n):
 2     x=20
 3     p='%%%ds'%x
 4     print(p%n)
 5 fl=input("请输入第一行")
 6 sd=input("请输入第二行")
 7 td=input("请输入第三行")
 8 dq(fl)
 9 dq(sd)
10 dq(td)
11 # rol=1
12 # kk=20-len(fl)
13 # kl=' '
14 # print(kk*kl,end=fl)

  2. 有字符串‘hello’

  生成新的字符串:

  ‘h-e-l-l-o’

  提示:用到文本解析办法join方法

1 n=input("输入:")
2 str="-"
3 print(str.join(n))

 

循环语句

  while循环 for循环

  while语句

    作用

    根据一定条件,重复执行一条或多条语句

    语法:

    while 真值表达式

    语句块1(此部分的语句可能或重复执行多次)

    else

    语句块2

  说明:

    1先执行真值表达式,得到布尔值为true或flase

    2.如果真值表达的值为true,则执行语句块1,然后再次返回到第一步,重复进行测试真值表达式的值。

    3.如果真值表达的值为false,则执行语句块2,然后结束while语句的执行

    注意:

      else子句部分可以省略(同if语句类似)

    while语句的注意事项:

      1、创建并初始化一个控制while循环的变量

      2、通过真值表达式来控制循环体

      3、通常用循环变量来控制循环条件,防止死循环。

练习:

1、用while循环打印1~20的整数(可以打印多行)

1 n=input("输入:")
2 str="-"
3 print(str.join(n))

2、用while循环打印1~20整数,打印在一行显示,每个数字之间用一个空分隔

1 i=20
2 while i>0:
3     print(i,end=' '),
4     i=i-1

3、用while循环打印1 20的整数,每行打印5个,打印4行

1 i=19
2 while i>=0:
3     print(i+1,end=' ')
4     if i%5==0:
5         print("\n")
6     i=i-1

打印金字塔

*

**

***

****

*****

 1 row=1
 2 while row<=5:
 3     col=1
 4     while col<=row:
 5         print("*",end="")
 6         col+=1
 7     print(" ")
 8     row+=1
 9 kk="*****"
10 kl=1
11 while kl<=5:
12     print(kk[0:kl])
13     kl+=1

练习:

输入整数n,打印指定宽度的正方形

输入5

打印

1 2 3 4 5

1 2 3 4 5

1 2 3 4 5

1 2 3 4 5

1 2 3 4 5

打印99乘法表

 1 k=1
 2 while k<=5:
 3     for i in range(1,6):
 4         print(i,end="")
 5     print("")
 6     k+=1
 7 j=1
 8 while j<=9:
 9     m=1
10     while m<=j:
11         print(j,"*",m,"=",j*m,end="   ")
12         m+=1
13     j+=1
14     print("\n")

 

break语句

  问题:

    如果在循环过程中不想再继续循环语句的执行了,怎么办?,,可以用break语句结束循环作用:

    用于循环语句(while, for语句中),用来终止当前循环语句

  说明:

    当break语句执行后,此循环语句break之后的语句将不再执行

    break语句通常和if语句组合使用

    break语句终止循环时,循环语句的else子句的语句不会执行

    break语句只能终止当前循环语句的执行,如果有循环嵌套时,不会跳出嵌套的外重循环

    break语句只能在循环语句(while,for语句)的内部使用

for循环

  作用:

    用来遍历可迭代对象的数据元素

    可迭代对象是指能依次获取数据元素的对象语法:

    for变量列表in可迭代对象:

    语句块1 (此处可能重复执行的语句块)

    else:

    语句块2

  说明:

    当前循环体内用break终止循环时,else 子句部分的语句不会执行else子句部分可以省略

    range()函数

    range (stop)用来生成0 stop区间内的整数,直到stop为止(不包含stop)

    range (star, stop[, step])用来生成start stop区间内的整数,直到stop为止(不包含stop) , 每个整数间隔step

      作用:

        用来创建一个生成. 系列整数的可迭代对象(也叫做序列生成器)

 

posted on 2019-06-23 21:00  Linxing  阅读(433)  评论(0编辑  收藏  举报