黑马程序员python教程,8天python从入门到精通,学python看这套就

第二章
day1
1. print直接输出
2.字符串和字符打双引号
3.
#单行注释
4.
"""
多行注释
"""
5.变量直接定义,不用说明类型
6.变量可以直接进行四则运算
day2
1.
type()得到数据类型
print(type(变量))得到
或者用变量存储type()的结果
# type()输出数据的类型 "a" num = 1 result = type(1.1) print("第1个结果",type("a")) print("第2个结果",type(num)) print("第3个结果",result)
2.数据类型转换
int_str = 1 string_str = "a" string2_str = "1" float_str = 1.1 bool_str = 0 result1 = int(float_str) result2 = float(int_str) result3 = int(string2_str) result4 = int(bool_str) result5 = bool(int_str) # result4 = int(string_str) print("float->int",type(result1),result1) print("int->float",type(result2),result2) print("string->int",type(result3),result3) print("bool->int",type(result4),result4) print("int->bool",type(result5),result5) # print("string->int",type(result4))
3.标识符
英文 中文 数字 下划线
数字不开头
大小写敏感
关键字不可占用
4.运算符
/除法 (可以显示小数位,结果为float类型)
//整除 (只显示整数位)
**指数 a^2 ->a**2
复合运算 += 、-=、/=、//=、%=、*=、**=
5.字符串
单引号
双引号
三引号 ”“” ““”
双引号内的单引号以字符显示 往后可以递推
6.转义符
\"
7.字符串拼接
使用+
8.字符串格式化
字符串占位%s
print("这里是str1=%s,这里是str2=%s"%(str1,str2))
顺序占位
数字占位%d
浮点数占位%f
9.格式化精度控制
m.n
m为数字取值范围 小于本身不生效(作用不明)
n为小数位数
%2.3f表示该位置的数字宽度为2 显示小数点后三位
10.快速格式化
num1 = 1 num2 = 2 string1 = "晴天" print(f"今天是{num1}月{num2}日今天的天气是{string1}")
11.表达式格式化
print("1*1的运算结果是%d"%(1*1),"运
算结果的数据类型是%s"%type(1*1)) print(f"1*1的运算结果是{1*1}",f"运算结果的数据类型是{type(1*1)}")
12.数据输入
num = input("请输入数据") print("输入的数据是",num)
第三章
day3
1.逻辑运算符,运算结果为布尔类型的值
2.比较运算符<、>、==、!=、>=、<=
3.if判断语句
if 判断条件:
从属于if的语句前面为四个空格缩进(tab)
if num1==num2: print("num1=num2") else: print("num1≠num2")
4.练习
需要注意input输入的数据都是string类型,需要转换数据类型
if elif else的运用及嵌套
# 嵌套 print("欢迎来到游乐园,儿童10岁及以下免费,10岁未成年半价,成年全价。\n请输入你的年龄:") age = input() age = int(age) gender = input("请输入你的性别女性0、男性1:") gender = int(gender) if age <= 10: print("您是未成年儿童,可以免费入场。") elif age >= 18: print("您已经成年,请收费20元入场。") else: if gender == 0: print("您是青少年女生,请缴费10元入场。") else: print("您是青少年男生,请缴费10元入场。") print("验证完成,祝你游玩愉快!")
5.随机数
先导包import random
num = random.randint(1,10)
int为类型
1-10为数据范围
6.练习(判断语句+嵌套)
randnum = random.randint(1,10) print("游戏开始,本游戏为数字猜测游戏,系统随机生成一个数字,输入数字进行猜测") num = int(input("随机数已经生成请输入你的答案")) if num == randnum: print(f"恭喜你,答对了!答案是:{randnum}") else: if num < randnum: num=int(input("你的答案偏小,您还有两次机会,请重新输入:")) if num == randnum: print(f"恭喜你,答对了!答案是:{randnum}") else: if num < randnum: num = int(input("你的答案偏小,您还有1次机会,请重新输入:")) if num == randnum: print(f"恭喜你,答对了!答案是:{randnum}") else: print(f"啊哦,你的机会已用完,答案是:{randnum}") elif num > randnum: num = int(input("你的答案偏大,您还有1次机会,请重新输入:")) if num == randnum: print(f"恭喜你,答对了!答案是:{randnum}") else: print(f"啊哦,你的机会已用完,答案是:{randnum}") elif num > randnum: num = int(input("你的答案偏大,您还有两次机会,请重新输入:")) if num == randnum: print(f"恭喜你,答对了!答案是:{randnum}") else: if num < randnum: num = int(input("你的答案偏小,您还有1次机会,请重新输入:")) if num == randnum: print(f"恭喜你,答对了!答案是:{randnum}") else: print(f"啊哦,你的机会已用完,答案是:{randnum}") elif num > randnum: num = int(input("你的答案偏大,您还有1次机会,请重新输入:")) if num == randnum: print(f"恭喜你,答对了!答案是:{randnum}") else: print(f"啊哦,你的机会已用完,答案是:{randnum}")di
第四章
day4
1.while循环
i = 0 while i<5: print(f"这是第{i+1}次循环。") i+=1
2.1~100的和
i = 1 sum = 0 while i<=100: sum +=i i+=1 print(f"1~100的和是{sum}")
3.循环猜数
i=3 import random random_num = random.randint(1,10) while i>0: num=int(input("请输入您猜测的数字:")) if num==random_num: print("恭喜,答案正确!") else: if i!=1: i -= 1 print(f"答案错误!您还有{i}次机会") elif i==1: i -= 1 print(f"答案错误!游戏结束")
4.while循环嵌套,99乘法表
print("不换行",end=' ')
‘ ’里边是输出内容最后面的内容
\t 制表符使内容对齐
i = 1 while i<=9: j=1 while j<=i: print(f"{j}x{i}={i*j}",end=' ') j+=1 print() i+=1
5.for循环
逐个处理
练习 统计字母a数量
count = 0 word = "this is a word , please find word a " for x in word: if x=="a": count+=1 print(f"总共有{count}个a")
6.range语句
生成数字序列
range(num)从0到num-1
range(num1,num2)从num1到num2-1
range(num1,num2,step)num1为起点 num2终点 step为步长,按步长取数,不包含num2
# 获取100以内偶数(含100) for i in range(0,101,2): print(i,end=' ') # 判断100以内的数字是否为偶数 count= 0 for i in range(100): print(i) if i%2==0: count+=1 print(f"100以内有{count}个偶数")
day5
1.不建议在循环外访问循环内部的临时变量
循环内的临时变量作用域在循环内
2.for循环嵌套 99乘法表
# for + for for i in range(1,10): for j in range(1,i+1): # if j<=i: print(f"{j}x{i}={i*j}\t",end='') print() # for + while for i in range(1,10): j=1 while i>=j: print(f"{j}x{i}={i * j}\t", end='') j+=1 print()
3.break 和continue
break 跳出循环
continue 结束本次循环,进行下一次循环
4.练习 break和continue
import random totle_salary = 10000 stuff_num = 20 personal_salary = 1000 performance = 0 for i in range(1,21): if totle_salary>0: performance = random.randint(1,10) if performance<=5: print(f"{i}号员工,绩效为{performance},过低没有工资") continue else: totle_salary-=1000 print(f"{i}号员工获得工资1000元") else: print("工资已经发完") break
第五章
1.len函数
可以查看变量的长度
2.
# 统计字符串长度 str1 = "this is a word" count = 0 for x in str1: if x !=" ": count+=1 print(f"字符串的长度为{count}")
3.函数的定义
def 函数名(形参列表):
函数体
return 返回值
def my_len(data): count = 0 for x in data: if x != " ": count += 1 print(f"字符串的长度为{count}") return count
4.函数的返回值
return 返回的值可以被变量接受
none 表示空
5.注释说明函数的功能(重要!!!)
按照格式编写
"""
函数说明
:param x : 形参x的说明
:return : 返回值的说明
"""
6.函数的嵌套调用
在函数中调用其他的函数
在函数a中调用函数b
a执行过程中遇到b先将b执行结束,再继续执行a剩下的内容
7.局部变量和全局变量
局部变量只能再作用域内调用
全局变量整个程序中可用
8.练习
money = 5000000 name = None name = input("请输入您的姓名:") def check(): print("··················余额查询··················\n" f"{name},您好,您的余额是:{money}") menu() def deposit(num): print("··················存款··················\n" f"{name},您好,请输入您的存款金额,并放入现金进行确认") global money money+=num menu() def draw(num): print("··················取款··················\n" f"{name},您好,请输入您的取款金额,出钞后进行确认") global money money -= num menu() def menu(): print("··················主菜单··················\n" "查询余额【输入1】\t\n" "存款【输入2】\t\n" "取款【输入3】\t\n" "退出【输入4】\t") return input() while True: jianpan = menu() if jianpan == "1": check() continue
day 6
1.list tuple str set dict
2.一维列表和二维列表以及空列表
列表内的数据类型没有限制
empty_list =[] # empty_list = list() the_list = [1,2,3] print(the_list) print(type(the_list)) flat_list = [ [1,'a',False],[1,2]] print(flat_list) print(type(flat_list))
3.列表索引的使用
print(the_list[0]) for i in range(3): print(the_list[i]) i = -3 while i <=-1: print(the_list[i]) i+=1 i = -1 while i>-4: print(the_list[i]) i-=1
3.方法的定义
Class 方法名:
def 函数名:
方法的使用需要先实例化和import
实例化: 实例对象名 = 方法名()
方法使用 实例对象名.方法中的函数名()
4.列表的增删查改
# index 使用 index = the_list.index(1) print(f"查看元素值为1在列表中的索引位置index={index}") # insert 使用 插入的位置后的元素的索引值+1 the_list.insert(0,4) print(the_list) # 追加元素 # 1 append 直接追加 元素追加在列表的最后 the_list.append(5) print(the_list) # 2 extend 追加一批元素 追加内容为列表 两个列表合并成为一个一维列表 the_list.extend([6,7,8]) print(the_list) second_list = [9] the_list.extend(second_list) print(the_list) # 删除元素 # 使用下标进行操作 # 1 del del the_list[0] print(the_list) # 2 pop可以取出列表的内容并且该元素在列表内被删除 element = the_list.pop(7) print(the_list,element) # remove使用 争对元素的内容 相同的内容只删除遍历到的第一个元素 the_list.remove(1) print(the_list) # 清空列表 # the_list.clear() # print(the_list) # count统计选定元素内容在列表中的数量 count = the_list.count(6) print(the_list,f"\n元素6在列表中有{count}个") # len 计算列表的长度 length = len(the_list) print(the_list,f"\n列表表长度是{length}")