python 开发 day05

day05笔记:

 今天内容

    1for语句

    2continue语句

    3、列表

  1for语句

      作用:

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

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

        可迭代对象包括:

        字符串str

       ----以下后再才讲----

    列表    list

    元组    tupie   

    字典    dict

    集合    set

   range 函数返回的对象等

     语法:

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

         语句块1

    else   

        语句块2

   s = 'ABCDE'

   for  ch in s:

print('ch  -->',ch)

    ch --> A

    ch --> B

    ch --> C

    ch --> D

    ch --> E

   s = 'ABCDE'

   for  ch in s:

print('ch  -->',ch)

   else:

       print('可迭代对象已经不能提供数据了!

    print ('程序结束’)

   练习:

      1.任意输入一个字符串:

        1)计算您输入的空格的个数,并打印出来

        2)计算您输入的‘a’字符的个数,并打印出来(要求用for语句实现)

      思考:

      whine 语句能否实现上述功能?

解:

  s = input('请输入一行字符串:')

count_blank = 0

for char in s:

    if char == ' ':

        count_blank += 1

else:

    print('空格的个数是:',count_blank)

count_a = 0

for char in s:

    if char == 'a':

        count_a += 1

else:

    print('a的个数是:',count_a)

 2renge 函数

   格式:

      见:>>> helprange

  函数

     range(stop)

     从零开始,每次生成一个整数后加1操作,直到stop为止(不包含stop

     rangestartstop [step]

     start开始,每次生成一个整数后移动step

     直到stop为止(不包含stop,且step可以是负整数)

  作用:

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

   示例:

      range 4)       #生成0123

      range  3,6)    #生成3,4,5

      range 1,10,2)  #生成1,3,5,7,9

   range.的示例:

for x in range 4):

printx

0,123

    练习:

      1.for语句打印1~20,打印在一行内

      2.for语句打印1~20,每五个打印在一行

    1.

#for x in range(1,(21)):

#    print(x,end=' ')

#else:

#    print()

      2.

#for x in range(1, 20):

#    print(x,end=' ')

#    if x % 5 == 0:

#    

#        print()

#else:

#    print()

 1.100以内在哪些数与自身+1的乘积对11求余的结果等于8

  2.计算1+3+5+7+.....+97+99的和分别用forwhile循环语句来实现

1for x in range(1,101):

    if (x +1)*x % 11 == 8:

        print(x)

  2.

s = 0

for x in range(1,100,2):

    s+=x       

 else:

    print('for语句求和的是:'s)

s = 0

x = 1

while x < 100:

    s+=x

    x+=2

else:

    print('while语句求和的是:',s)

   3for语句的注意事项:

      #请问下面程序的打印结果是什么:

i = 6

for x in range1,6):

    print(‘x=’,x,‘i=’,i

    i -= 1 #  <<<---- 注意此处

   x= 1 i= 6

   x= 2 i= 6

   x= 3 i= 6

   x= 4 i= 6

   x= 5 i= 6

   如下语句的执行结果是什么?为什么?

   ....

  4for语句的嵌套

     示例:

      for x in 'ABC'

       for y in '123':

print(x+y)

          A1

          A2

          A3

          B1

          B2

          B3

          C1

          C2

          C3

   练习;

      输入一个整数n,打印一个对应的正方形:

     如:

     请输入:5

                    #1

                 1 2 3 4 5

                 2 3 4 5 6

                 3 4 5 6 7

                 4 5 6 7 8

                 5 6 7 8 9

      #2

1 2 3 4 5 6 7 8

1 2 3 4 5 6 7 8

1 2 3 4 5 6 7 8

1 2 3 4 5 6 7 8

1 2 3 4 5 6 7 8

1 2 3 4 5 6 7 8

1 2 3 4 5 6 7 8

1 2 3 4 5 6 7 8

    

         1  

#bc = int(input('请输入正方形的边长:'))

#for line in range (bc):

   #打印一行

#    for i in range (1,bc+1):

#       print (i,end= ' ')

#    print() #换行

        

       2

#bc = int(input('请输入正方形的边长:'))

#for line in range (bc):

#    #打印一行

#    for i in range (line + 1,line + 1 + bc):

#        print (i,end= ' ')

#    print() #换行

   5coutinue 语句

    用于循环语句中,(whinefor语句)中,不再执行本次循环coutinue之后的语句,重新开始一次新的循环

    说明:

       1.for语句中执行continue语句,将会从可迭代对象中去下一个元素,绑定变量会后再次开始执行

        2.while语句中执行continue,将会之间跳转到while语句的真值表达式处重新判断循环条件

     示例:

    continue.py

#for x in range(5):

#    if x == 3:

#        continue

#    print(x)

 0

 1

 2

 4

  continue语句跳过奇数打印偶数

#for x in range(20):

#    if x % 2 == 1:

#        continue

#    print(x)

0

2

4

6

8

10

12

14

16

18

 1~100之间所有不能被5.7.11整除的数以及这些数的和

#s = 0

#for x in range(1,100):

#    if x %5 != 0 and x %7 != 0 and x %11 != 0:   

#        print(x)

#        s += x

#print('以上所以数的和是:',s)

  循环语句总结:

     while 语句

可以用于死循环

     for 语句

用于可迭代对象的循环

     break 语句:

用于终止当前循环

     continue语句:

用于开始一次新的循环

  6、列表 list

    列表的定义:

列表是一种容器

列表是序列的一种

列表是可以被改变的序列

列表中由一系列特定元素组成的,元素与元素之间可以没有任          何的关联关系,但他们之间有先后顺序关系

   创建空列表的字面值

      L = [] # L 变量绑定空列表

   创建非空列表的字面值

     L = [1,2,3,4]

     L = ['beijing',‘shanghai’,‘shenzhen]

     L =[1,‘Two,3.14, ‘四’]

  列表的构造(创建)函数 list

     list ()           生成一个空的列表,等同于[]

     list iterable) 用可迭代对象创建一个列表

   示例:

      L = list () # L绑定空列表

      L = list (‘hello’) # L 绑定['h','e', 'l','l','o']

      L = list  (range(1,10,2)) #L (1,3,5,7,9)

    列表的运算:

     算术运算:

        + += *  *=

       + 用于拼接列表

       x = [1.2.3]

       y = [4,5,6]

       z = x + y [1.2.3.4.5.6]

      

      += 用原列表与左侧列表拼接,用变量绑定拼接后的列表

x = [1.2.3]

x += [4.5.6]

print(x)

*生成重复的列表

x = [1.2] * 3 # = [1.2.1.2.1.2]

x *= y 等同于 x = x * y

   

   列表的比较运算:

运算符:

< <= > >=  ==  !=

比较的规则同字符串的规则相同

x = [1. 2. 3]

y = [1. 2. 4]

x != y  # True

x <= y # True

y > x    #True

["AB"."abc","123"] < ["AB" ," 123","abc"]  # False

              [1, 'Two']>['Two',1]   # 出错了

 列表的 in / not in 运算符

     作用:

        判断一个值是否存在于列表中,如果存在返回Ture,否则返回False

        not in 的返回值与 in 运算符相反

     示例:

        2     in    [1.2.3.4]              #    True

    ‘2’  in   not in [1. 2. 3. 4]   #   False

    列表是可迭代对象:

         for  x  in [2. 3. 5. 7]:

          print(x)   #   x绑定列表内的元素

   练习:

      1   输入三行文字,将这三行文字保有存于列表L中,并打印:

           如:

            请输入: abc 《回车》

            请输入 :  1234 <回车>

             请输入 :  您好 <回车>

生成如下列表:

          ['abc', '1234','您好']

printL# 打印

     2   输入任意行文字,存于列表L中,当不输入任意内容回车后退出输入,

           1)打印L列表中的内容

           2)计算您共输入的几行内容

           3)计算您共输入了多少个字符

       #1

#a  = (input('请输入第一行文字:'))

#a1 = (input('请输入第一行文字:'))

#a2 = (input('请输入第一行文字:'))

#L = [a,a1,a2]

#print(L)

  

      #2

L = []

while True:

    a = input('请输入文字:')

    if not a:

        break

    L = L + [a]

    #L = L + a存的是字符串分开的

print('L绑定的列表是:',L)

count = 0

for x in L:

    count += 1

print('您输入的行数是:',count)

猜你喜欢

转载自blog.csdn.net/weixin_42312995/article/details/80629426