03x10 day1
a = 1
print(type(a))
定义变量a=1 输出a的数据类型
不管原来是什么数据库类型 只要加上''
最后都是字符串类型
占位符(%d)形式的字符串输出
a = 10
print('a的值是%d' %a)
跟c语言输出类似 但是也有不同
c语言: printf("a的值是%d",&a);
python:print('a的值是%d' %a)
如果要输出多个需要用户括号一起括起来
print('name: %s age: %d' % ('Tom',12))
占位符表
格式符号 | 转换 |
---|---|
%c | 字符 |
%s | 字符串 |
%d | 有符号十进制整数 |
%u | 无符号十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(小写字母0x) |
%X | 十六进制整数(大写字母0X) |
%f | 浮点数 |
%e | 科学计数法(小写’e’) |
%E | 科学计数法(大写’E’) |
%g | %f和%e的简写 |
%G | %f和%E的简写 |
f-string
f' '
并不是必须写在print里面的 只是使用print输出 跟%d不同
输入函数input
a = input('please input a number:')
print(a)
input从键盘获取的数据。无论输入的是什么,得到的都是字符串类型
因为得到的是字符串类型 所以相加得到的数是拼接而成 并不是相加

运算符
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 两个对象相加a + b 输出结果30 |
- | 减 | 得到负数或是一个数减去另一个数 a - b输出结果-10 |
* | 乘 | 两个数相乘或是返回一个重复若干次的字符串a*b输出结果200 |
/ | 除 | b/a输出结果2 |
// | 取整除 | 返回商的整数部分9//2输出结果4,9.0//2.0输出结果4.0 |
% | 取余 | 返回除法的余数b % a 输出结果被 0 |
** | 指数 | a**b为10的20次方,输出结果10000000000000000000 |
**
高于*
/
//
%
高于 +
-
不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算
复合赋值运算符
运算符 | 描述 | 实例 |
---|---|---|
+= | 加法赋值运算 | c + = a等于c = c + a |
-= | 减法赋值运算 | c - = a等于c = c - a |
*= | 乘法赋值运算 | c * = a 等于c = c * a |
/= | 除法赋值运算 | c / = a 等于 c = c / a |
%= | 取模赋值运算 | c % = a等于c = c % a |
**= | 幂赋值运算 | c * * = a等于c = c * * a |
//= | 取整除赋值运算 | c / / = a等于c = c / / a |
类型转换
chr函数 数字转字符(ascii码)
print(chr(65))
ord函数 字符转数字
print(ord(‘A’))
03x11 day2
摸鱼了..
03x12 day3
1.函数概述
作用:用来将一段功能代码封装到一起,并起个名
在使用时,只需要使用代码的名字即可
好处:
提高代码的开发效率
使代码更加简洁
提高代码的复用率
2.函数的定义和调用
函数的定义格式:
def 函数名(参数列表...):
函数功能代码...
注意:当定义完函数名回车后 写第二行代码要按tab键对齐
函数使用(调用)
函数名(值列表...)
def a():
print(123)
定义了一个函数a 函数实现的功能为输出“123”
注意:定义函数并不会执行 当后面调用时才会执行 如下图
调用def函数
3.函数调用过程
1.函数在定义时,函数体中的代码是不执行的
2.当产生函数调用时,程序才会跳转到函数体中执行函数的代码
3.函数体中的代码执行完成后,回到调用处
def show():
print('2')
print('1')
show()
print('3')
4.函数文档说明
通过help(函数名)
运行后可以查看当前函数注释
5.函数的实参和形参
实参.实际参数,实在函数调用时,括号中出现的数据称为实参
形参.形式参数,实在函数调用时,接受函数调用传递过来的实际数据
实参和形参 在传递时,要一一对应
看不懂的话看下面代码举例
def say_hi(name): #形参
print('hello', name)
say_hi('tom') #实参
7.函数返回值
return
返回一个函数的结果
格式:
return 数据
一个函数,无论在哪遇到return,那么这个将函数都会直接结束执行,回到调用处
return
后面可以没有数据 返回None
函数也可以没有return
,函数默认返回None
def get_num():
return 1
get_num() #不会打印输出 因为没有打印函数
print(get_num()) #会打印输出
a = get_num() #将get_num()的值赋予给a
print(a) #将a打印输出
def show():
print('1') #输出
print('2') #输出
return() #停止返回至调用函数
print('3') #不执行
print('4') #不执行
show() #调用show()函数
一旦遇到return
函数停止执行 返回至调用处
return
默认为空none
注意:理解return()
为什么 图片1 没有输出()
而图片2 输出了()
自己总结:有return
并且reutrn
有返回值不输出None
return 返回None
不写return 返回None
return 值 有打印函数 将值打印出来 且不输出None
区分一下前面的
练习
03x13 day4
函数联系-传参和输入输出数据的区别
'''
定义一个函数,传入两参数,并计算参数累加和返回
'''
def show(a , b):
return a + b
print(show(1 , 2))
s= show( 1, 2)
print(s)
8.函数包含多个return语句
一个函数中可以存在多个return
但是,只能由一个语句有效
在执行顺序上,第一个遇到的return
有效
举例
判断语句和循环语句
1.比较(即关系,条件)运算符
python中的比较晕旋覆如下表
运算符 | 描述 | 示例 |
---|---|---|
== | 检查两个操作数的值是否相等,如果是则条件变为真 | 如a=3,b=3,则(a == b)为true |
!= | 检查两个操作数的值是否相等,如果只不相等,则条件变为真。 | 如a=1,b=3,则(a != b)为true |
> | 检查左操作数的值是否大于右操作数的值,如果是,则条件成立 | 如a=7,b=3,则(a > b)为true |
< | 检查左操作系统的值是否小于右操作数的值,如果是,则条件成立 | 如a=7,b=3,则(a < b)为true |
>= | 检查左操作系统的值是否大于或等于右操作数的值,如果是,则条件成立。 | 如a=3,b=3,则(a >= b)为true |
<= | 检查左操作数的值是否小于或等于有操作数的值,如果是,则条件成立。 | 如a=3,b=3,则(a <= b)为true |
关系运算符的结果是bool类型
2.逻辑运算符
运算符 | 逻辑表达式 | 描述 | 实例 |
---|---|---|---|
and | x and y | 布尔‘与’:如果x 为false, x and y返回false,否则它返回y的值 | true and false,返回false |
or | x or y | 布尔‘或“:如果x是 true,它返回true,否则它返回y的值 | false or true,返回true |
not | bot x | 布尔”非“:如果x为true,返回false。如果x为false,它返回true | not true返回false,not false返回true |
运算结果也是布尔类型值
and
第一个print当前面都为真时 输出的值默认输出最后的值
第二个print 第一个0短路 后面不看 输出0
or
遇到第一个真
直接输出
if语句的格式和作用
格式:
if条件
满足条件执行的代码
if也可不加括号
if-else格式和作用
格式:
if条件:
满足条件的代码
else:
不满足条件的代码
if判断条件,如果条件满足,执行if后面的代码,如果条件不满足,执行else后面的代码
练习:定义一个函数 接收一个数字参数,判断数字是否时偶数
def show(n):
if n % 2 == 0:
print(f' {n} 是偶数')
else:
print(f'{n}是基数')
m = int(input('请输入一位数'))
show(m)
def show(n):
if n % 2 == 0:
print('%d是偶数' %n)
else:
print(f'{n}是基数')
m = int(input('请输入一位数'))
show(m)
if elif else格式
if 条件1:
满足条件1执行的代码
elif 条件2:
满足条件2执行的代码
else:
不满足条件执行的代码
def show(day):
if day == '1' or day == '一':
print('星期一')
elif day == '2' or day == '二':
print('星期二')
elif day == '3' or day == '三':
print('星期三')
elif day == '4' or day == '四':
print('星期四')
elif day == '5' or day == '五':
print('星期五')
elif day == '6' or day == '六' :
print('星期六')
elif day == '7' or day == '七':
print('星期天')
else:
print('错误')
d = input('请输入:')
show(d)
if语句的嵌套作用
if 条件:
if 条件:
if 条件:
def show(score):
if score >= 90:
print(f' 得分{score }, 级别优')
elif score >= 80:
print('得分 %d 级别良' %score)
elif score >= 70:
print(f'得分 {score}, 级别中')
elif score >= 60:
print(f'得分 {score}, 级别查')
else:
print(f'得分 {socre}, 不及格')
s = int(input('请输入成绩:'))
show(s)
加入if嵌套
def show(score):
if score >= 0 and score <= 100: #成绩有效判断
if score >= 90:
print(f' 得分{score }, 级别优')
elif score >= 80:
print('得分 %d 级别良' %score)
elif score >= 70:
print(f'得分 {score}, 级别中')
elif score >= 60:
print(f'得分 {score}, 级别查')
else:
print(f'得分 {socre}, 不及格')
else:
print(f'成绩{score}是无效的')
s = int(input('请输入成绩:'))
show(s)
随机数Random
1.导入 random
模块
random.randint(n1,n2)
通过这个函数得到一个
[n1,n2]
的区间 比如[1,9]
会得到1-9随机数
import random #导入模块
n = random.randint(1,9) #使用随机数模块获取一个随机数
print(n)
03x14 day5
break
1.break 只能用在循环里
2.break 的作用是用来结束循环,不管循环多少次
continue
- continue 也只能用在循环里
- continue得作用是用来结束本次循环,不管循环体中还有多少代码没执行 ,进入下一次循环
while True:
print('hello')
continue
print('world')
练习:
1.猜拳游戏
条件
a.两个角色 玩家-电脑
b.动作:石头 0 ,剪刀 1 ,布 2
c.我的出拳:由输入完成
d.电脑的出拳:随机数完成
e. 比较出拳
f. 相等 - 平局
g. 玩家赢:p0:r1 p1:r2 p2:r0
h.剩下的情况就是电脑赢
'''
a. 两个角色 玩家 player - 电脑 robot
b. 动作: 石头 0 , 剪刀 1, 布 2
c. 我的出拳: 由输入完成
d. 电脑的出拳: 随机数完成
e. 比较出拳
f. 相等 - 平局
g. 玩家赢: p0:r1 p1:r2 p2:r0
h. 剩下的情况就是电脑赢
'''
# 导入随机数模块
import random
# 定义一个函数
def game():
# 定义一个玩家变量,从键盘输入值
player = int(input('请输入一个状态(石头 0 , 剪刀 1, 布 2):'))
# 定义一个电脑变量,使用随机数获取状态
robot = random.randint(0, 2)
# 比较状态
# 先状态平局
if player == robot:
print('平局')
# 再判断玩家赢的状态
elif ((player == 0) and (robot == 1)) or ((player == 1) and (robot == 2)) or ((player == 2) and (robot == 0)):
print('玩家赢')
# 剩下就是电脑赢的状态
else:
print('你输出,电脑胜出')
# 函数调用,开始游戏
game()
2.输出矩形
'''
循环实现打印矩形
'''
#定义一个矩形
def show():
i =0
while i < 5:
j = 0
while j < 5:
#在print函数中,使用 end= 形式来给print函数设置一个结束符号,默认的结束符是\n换行
print(' * ', end=' ')
j += 1
print() #起到默认换行作用
i += 1
show()
3.打印9*9乘法表
03x15 day6
三目运算符
c语言:条件?表达式1:表达式2
python: 表达式1 if 条件 else 表达式2
执行过程:
判断 条件是否成立,如果条件成立,那么得到表达式1,否则得到表达式2
def show():
n = int(input('number:'))
s = '偶数' if n % 2 == 0 else '奇数'
print(s)
show()
03x16
循环语句while
程序分为三种结构:
1.顺序结构—–从上至下。顺序执行
2.分支结构—–根据条件是否成立,选择不同的代码执行
3.循环结构—–一段代码会重复执行多次
循环四要素:
1.循环初始值
2.循环条件
3.循环体代码
4.让循环变量趋近于结束条件的代码
循环执行过程
1 > 2 > 3 > 4 > 2 > 3 > 4 > 2 > 3 > 4 > ….2(不满足条件,退出循环)
while格式
while条件:
循环体代码
'''
输出1-100的值
'''
def show():
#定义一个循环变量并有初值
i = 1
#判断条件
while i <= 100:
print(i)
i += 1
show()
while循环嵌套
while 条件1:
while 条件2:
循环体...
执行过程:外层循环一次,内层循环一圈
'''
外层循环3次
内层循环5次
'''
i = 0
while i < 3:
print('i--', i)
j = 0
while j < 5:
print('j---', j)
j += 1
i += 1
多层循环中使用break和continue
'''
外层循环3次
内层循环5次
'''
i = 0
while i < 3:
print('i--', i)
j = 0
while j < 5:
print('j---', j)
break
j += 1
i += 1
break
会跳出最近得所在得循环
break
在j += 1
前面跳出循环执行外层i
的循环 所以j的值不会发生变化 i的条件是3所以i,y执行三次
def show(n):
i = 0
while i < n:
#if i % 2 == 0
#print(i)
i += 1
if i % 2 ==1:
continue
print(i)
show(10)
注意i += 1的位置