Python学习day2

一、计算机的控制流程:

1、顺序结构  2、选择结构(if语句)3、循环结构(while语句,for-in语句)

#对象的布尔值

1、Python一切皆对象,所有对象都有一个布尔值(1、获取对象的布尔值  2、使用内置函数bool())

2、以下对象的布尔值为False(其余对象的布尔值均为True
False        数值0        None        空字符串        空列表        空元组        空字典        空集合

二、选择结构

a、单分支结构(如果······就······)                                   

 

语法结构:        if条件表达式:

                                  条件执行体

b、双分支结构(如果······不满足······就······)

语法结构:        if条件表达式:

                                  条件执行体1

                          else条件表达式:

                                  条件执行体2

c、多分支结构

语法结构:        if条件表达式:

                                  条件执行体1

                          elif条件表达式2:

                                  条件执行体2

                          elif条件表达式N:

                                  条件执行体N

                          [else:]

                                  条件执行体N+1

d、嵌套if(外层循环执行一次内层循环执行完整的一轮

语法结构:        语法结构:
                                  if条件表达式1:
                                          if 内层条件表达式:
                                                  内存条件执行体1
                                           else:

                                                   内存条件执行体2

                                   else:
                                           条件执行体

e、条件表达式(if······else的简写)

语法结构:        x     if      判断条件      else      y

运算规则:如果判断条件的布尔值为True,条件表达式的返回值为x,否则条件表达式的返回值为False

#pass语句
语句什么都不做,只是一个占位符,用在语法上需要语句的地方
什么时候使用?
先搭建语法结构还没想好代码怎么写的时候
哪些语句一起使用?
if语句的条件执行体         for- in语句的循环体        定义函数时的函数体

1、内置函数range()(用于生成一个整数序列)

#创建的三种方式

(1)、range(stop)

print(list(range(3)))  #步长默认为1
#结果
#[0, 1, 2]

(2)、range(start, stop)

print(list(range(1, 4)))  #步长默认为1
#结果
#[1, 2, 3]

(3)、range(start, stop, step)(返回的值是一个迭代器对象

#当步长为正数
print(list(range(1, 11, 2)))
#结果
#[1, 3, 5, 7, 9]

#当步长为负数
print(list(range(11, 0, -2)))
#结果
#[11, 9, 7, 5, 3, 1]

三、循环结构(反复做同一件事情的情况)

1、while循环(用于次数不固定的循环,初始条件不成立时一次都不执行

语法结构:        while 条件表达式:

                                  条件执行体(循环体)

四部循环法:a、初始化变量  b、条件判断  c、条件执行体(循环体)d、改变变量

(初始化的变量与条件判断的变量与改变的变量为同一个)

执行流程:

选择结构的if与循环结构while的区别

if是判断一次,条件为True执行一行

while是判断N+1次,条件为True执行N次

 2、for-in循环(遍历的对象必须是可迭代的对象)

语法结构:

for  自定义的变量  in  可迭代的对象:

      循环体

执行图

 循环体内不需要访问自定义变量,可以将自定义变量代为下划线

for _ in range(5):
    print('I love python')

3、流程控制语句break(用于结束循环结构,通常与分支结构if一起使用)

非正常结束循环

 eg:

for item in range(3):
    pwd = input('请输入密码: ')
    if pwd == '1234':
        print('密码正确')
        break
    else:
        print('密码不正确')

4、流程控制语句continue(用于结束当前循环,进入下一次循环,通常与分支结构中的if一起使用)

 eg:

for item in range(1, 51):
    if item%5 != 0:
        continue
    print(item)

5、else语句

(1)if条件表达式不成立时执行else

          if······:

                ···

          else:

                ···

(2)没有碰到brake时执行else

          while······:                                                         for······:

                  ···                                                                      ···

           else:                                                                 else:

                   ···                                                                     ···

6、二重循环中的break和continue用于控制本层循环

for i in range(5):  #代表外层循环要执行五次
    for j in range(1, 11):
        if j%2==0:
            break
        print(j)
for i in range(5):  #代表外层循环要执行五次
    for j in range(1, 11):
        if j%2==0:
            continue
        print(j, end='\t')
    print()

四、列表

索引-7-6-5-4-3-2-1
数据'hello''world'12398.6'world'178'python'
索引0123456

1、列表创建方式

a、使用中括号        b、调用内置函数list()

2、列表的特点

a、列表元素按顺序有序排列  b、索引映射唯一个数据  c、列表可以存储重复数据  d、任意数据类型混存  d、根据需要动态分配和回收内存

3、列表的查询操作

a、index():获取列表中指定元素的索引(如所查列表中存在N个相同元素,只返回相同元素中的一个元素的索引)

b、获取列表中的单个元素

lst = ['hello', 98, 'world']  #建立列表
print(lst[0])  #正向索引
print(lst[-1])  #逆向索引
print(lst[4])  #指定索引不存在,抛出indexError

c、获取列表中多个元素(切片操作

语法格式:  列表名[start : stop : step](step默认为1)

切片的结果:原列表片段的拷贝  范围:[start : stop]  

step为正数:[ : stop : step](切片的第一个元素默认是列表的第一个元素)

                      [start : : step](切片的最后一个元素默认是列表的最后一个元素)

                      从start开始往后计算切片

step为负数: [ : stop : step](切片的第一个元素默认是列表的最后一个元素)

                      [start : : step](切片的最后一个元素默认是列表的第一个元素)

                       从start开始往前计算切片

d、判断指定元素在列表中是否存在

元素   in   列表名                元素   not in   列表名

e、列表元素的遍历

for   迭代变量   in   列表名   :

        操作

4、列表元素的增加

增加操作方法/其它操作描述备注
append()在列表的末尾添加一个元素在原列表上进行改动
extend()在列表的末尾至少添加一个元素在原列表上进行改动
insert(i, x)在列表的任意位置添加一个元素在原列表索引为i的前面加上元素x
切片在列表的任意位置添加至少一个元素在原列表上进行改动

5、列表的删除

删除操作方法/其它操作描述
remove()一次删除一个元素
重复元素只删除第一个
元素不存在抛出ValueError
pop()删除一个指定索引位置上的元素
指定索引不存在抛出IndexError
不指定索引,删除列表最后一个元素
切片一次至少删除一个元素
clear()清空列表
del删除列表
'''删除至少一个元素,将产生一个新的列表'''
lst = [1, 2, 3, 4]
new_list = lst[1:3]
print('原列表', lst)
print('切片后的列表', new_list)

'''不产生新的列表对象,而是删除原列表中的内容'''
lst[1:3] = []

6、列表元素的修改

为指定索引的元素赋予一个新值

为指定的切片赋予一个新值

7、列表元素的排序

(1)调用sort()方法,列表中的所有元素默认按照从小到大的顺序进行排序,可以指定reverse=True,进行降序排序(通常默认reverse=False)

是在原列表上进行改动

(2)调用内置函数sorted(),可以指定reverse=True,进行降序排序,原列表不发生改变

产生一个新的列表

8、列表生成式

语法格式:[i*i for i in range(1,10)

表示列表元素的表达式(通常包含自定义变量)    自定义变量   可迭代对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值