零基础学 Python(2018 版)
尹会生
前游戏公司技术总监,前新浪网技术经理
80146 人已学习
新⼈⾸单¥68
课程目录
已完结/共 72 讲
第一章 :Python介绍和安装 (3讲)
第二章 :Python基础语法 (3讲)
第四章 :条件与循环 (5讲)
第五章 :映射与字典 (2讲)
第六章 :文件和输入输出 (2讲)
第七章 :错误和异常 (1讲)
第九章 :模块 (1讲)
第十章 :语法规范 (1讲)
第十一章 :面向对象编程 (4讲)
第十二章 :多线程编程 (2讲)
第十六章 :综合案例 & 结课测试 (1讲)
特别放送 (1讲)
零基础学 Python(2018 版)
登录|注册
留言
19
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 14 | while循环
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.75x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
01 | Python语言的特点
02 | Python的发展历史与版本
03 | Python的安装
04 | Python程序的书写规则
05 | 基础数据类型
06 | 变量的定义和常用操作
07 | 序列的概念
08 | 字符串的定义和使用
09 | 字符串的常用操作
10 | 元组的定义和常用操作
11 | 列表的定义和常用操作
12 | 条件语句
13 | for循环
14 | while循环
15 | for循环语句中的if嵌套
16 | while循环语句中的if嵌套
17 | 字典的定义和常用操作
18 | 列表推导式与字典推导式
19 | 文件的内建函数
20 | 文件的常用操作
21 | 异常的检测和处理
22 | 函数的定义和常用操作
23 | 函数的可变长参数
24 | 函数的变量作用域
25 | 函数的迭代器与生成器
26 | Lambda表达式
27 | Python内建函数
28 | 闭包的定义
29 | 闭包的使用
30 | 装饰器的定义
31 | 装饰器的使用
32 | 自定义上下文管理器
33 | 模块的定义
34 | PEP8编码规范
35 | 类与实例
36 | 如何增加类的属性和方法
37 | 类的继承
38 | 类的使用-自定义with语句
39 | 多线程编程的定义
40 | 经典的生产者和消费者问题
41 | Python标准库的定义
42 | 正则表达式库re
43 | 正则表达式的元字符
44 | 正则表达式分组功能实例
45 | 正则表达式库函数match与search的区别
46 | 正则表达式库替换函数sub()的实例
47 | 日期与时间函数库
48 | 数学相关库
49 | 使用命令行对文件和文件夹操作
50 | 文件与目录操作库
51 | 机器学习的一般流程与NumPy安装
52 | NumPy的数组与数据类型
53 | NumPy数组和标量的计算
54 | NumPy数组的索引和切片
55 | pandas安装与Series结构
56 | Series的基本操作
57 | Dataframe的基本操作
58 | 层次化索引
59 | Matplotlib的安装与绘图
60 | 机器学习分类的原理
61 | Tensorflow的安装
62 | 根据特征值分类的模型和代码
63 | 网页数据的采集与urllib库
64 | 网页常见的两种请求方式get和post
65 | HTTP头部信息的模拟
66 | requests库的基本使用
67 | 结合正则表达式爬取图片链接
68 | Beautiful Soup的安装和使用
69 | 使用爬虫爬取新闻网站
70 | 使用爬虫爬取图片链接并下载图片
强势回归:零基础学Python2022版来啦!
71 | 如何分析源代码并设计合理的代码结构&结课测试
本节摘要

课程源码、课件及课后作业地址:

https://gitee.com/geektime-geekbang/geekbangpython

登录 后留言

全部留言(19)

  • 最新
  • 精选
Shirley
老师,批量注释您用了什么快捷键呀

作者回复: ctrl+/

2018-12-15
10
孙宇瞳
老师您好,有以下2个问题咨询一下。 问题1、 下面代码1可以执行,代码2不可执行,而且无任何提示。这个是什么原因呢? #两端代码的唯一区别是,代码1中的 print(num) 与 if 开头是对齐的;代码2中的 print(num) 与 if 开头是不对齐的,往后错了大概一个tab。 问题2、 python对于代码段落格式对齐方面有什么要求嘛? 代码1-----可以执行 import time num = 5 while True: num = num +1 if num == 10: continue print(num) time.sleep(1) 代码2----无法执行 import time num = 5 while True: num = num +1 if num == 10: continue print(num) time.sleep(1)

作者回复: 您好,我先回答第二个问题,python确定语句块(比如if语句块包含一条语句还是两条语句)是看缩进来判断的,缩进可以是一个或者多个空格或者tab,但是我们习惯上缩进用四个空格。 那我们回头来看第一个问题, (四个空格) if num == 10: (八个空格) continue (八个空格) print(num) 这里的print()语句如果前面只有四个空格那么,程序会执行if语句之后,执行print()语句;而第二个代码print()前面有8个空白格,那么print就被包括做if语句块中了,它的前一个语句是continue,表示外面的循环语句遇到这条语句就跳过一次循环,因此你就看不到print函数的输出了,也就是你认为的无法运行,其实是程序在一直执行循环,但是没有输出

2019-02-07
4
youyoukaka
老师为什么我调用不了休眠1秒钟呢,import time 下有波浪线,提示unused import statement import time num = 5 while True: num = num + 1 print(num) if num == 10: continue time.sleep(1)

作者回复: continue语句帮你完美的避过了time模块,程序执行到continue会跳出循环,下面的time模块不被执行

2018-09-17
2
iam.wang
# 练习一 条件语句的使用 str1 = input('请输入一个字符串:') if len(str1) == 10 : print('%s 的长度等于10'% (str1)) elif len(str1) > 10: print("%s 的长度大于10" % (str1)) else: print("%s 的长度小于10" % (str1)) # 提示用户输入一个1-40之间的数字,使用if语句根据输入数字的大小进行判断 enter_num = int(input('请输入一个数字:')) if enter_num >= 1 and enter_num<=10: print("您输入的数字在1~10之间") elif enter_num >= 11 and enter_num<=20: print("您输入的数字在11~20之间") elif enter_num >= 21 and enter_num<=30: print("您输入的数字在21~30之间") elif enter_num >= 31 and enter_num<=40: print("您输入的数字在31~40之间") else:print('您输入的数字不在1~40之间') # 练习二 循环语句的使用 #1. 使用for语句输出1-100之间的所有偶数 print("1-100之间的所有偶数:") for num in range(1,100): if num % 2 ==0 : print(num) #break #2. 使用while语句输出1-100之间能够被3整除的数字 print("1-100之间能够被3整除的数字:") num2 = 1 while num2 in range(1,100) : num2 = num2 +1 if num2 % 3 == 0: print(num2)

作者回复: 正确,稍后我会在github公布练习题答案

2018-06-12
1
卡罗基·老司机·波波爷夫
老师您好,我是win10系统的,看过您有个操作,选上多行,然后按#就可以全变注释,是有那个快捷键吗?我一按就只变为#

作者回复: ctrl + /

2020-08-10
jkhcw
老师,下面这段代码有什么问题啊?死活查不出来。总在下面这一行报错: while stack and height[stack[-1]] < height[current]: TypeError: list indices must be integers or slices, not type ---------------------------------- def trap(self, height: [int]) -> int: stack = [int] current = 0;lenth = len(height) max = 0 # flag = (stack != [] and height[stack[-1]] < height[current]) while current < lenth: while stack and height[stack[-1]] < height[current]: top = stack[-1] cur_h = height[top] stack.pop() if not stack: break min_h = min(height[current], height[stack[-1]]) max += (min_h - cur_h) * (current - stack[-1] - 1) stack.append(current) current += 1 return max

作者回复: 这个错误的意思是'类型错误:list的索引必须是'integers'或者'slices'不能是'type' ,检查一下 stack[-1]或 current 的值是不是 'integers'或者'slices'

2020-04-21
2
食神0878
想问老师一个操作,选定多行代码同时注释(在前面加#)怎么操作。我只能一行一行的在代码前面加#

作者回复: ctrl + / 是 IDE的快捷键

2020-03-20
L
老师,为什么python中没有自加运算符呀

作者回复: 猜测是和++的含义相关,因为++的含义是改变元素本身,而Python指向的整数对象是不可变的对象,和它对整数类型的定义冲突了

2020-03-12
°心丶吧。
老师有个问题想请教一下, 下面这个代码中为什么下面代码中if里面的代码块没有被执行,而且运行过程中一直会报IndexError错误,我尝试用try去continue后就变成了一个死循环 life_num=[a+1 for a in range(30)] #生成编号序列 # print(life_num) j=1 while True: if len(life_num) == 15: print(life_num) break else: for n in range(len(life_num)): if j==9: print('%a号下船!'%life_num[n]) life_num.remove(life_num[n]) j = 2 else: j+=1

作者回复: 您好, 抛出异常之后程序不会向下执行,所以if部分没有被执行到,考虑IndexError 的异常,可以看下是哪里取life_num的下标出了问题,提示一下:注意在错误提示上面找一下问题代码所在的行数

2019-12-03
不努力就老了
1-100的整数是否应该是range(1,101) ?

作者回复: 是的,range(1,101),后面我们还会学一个xrange()函数,他们的返回结果不同,根据需求要选择不同的方式生成1-100的整数

2019-02-22
2
收起评论