python笔记


03x10 day1



a = 1
print(type(a))

定义变量a=1 输出a的数据类型

image-20220310174146981


不管原来是什么数据库类型 只要加上''最后都是字符串类型


占位符(%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从键盘获取的数据。无论输入的是什么,得到的都是字符串类型

因为得到的是字符串类型 所以相加得到的数是拼接而成 并不是相加

image-20220310212113075

运算符

运算符 描述 实例
+ 两个对象相加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”

注意:定义函数并不会执行 当后面调用时才会执行 如下图

没有输出123

调用def函数

调用a函数后输出“123”

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()函数

图片1

一旦遇到return 函数停止执行 返回至调用处

return默认为空none

图片2

注意:理解return() 为什么 图片1 没有输出() 而图片2 输出了()

没有return默认输出None

自己总结:有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 模块

  1. 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

  1. continue 也只能用在循环里
  2. continue得作用是用来结束本次循环,不管循环体中还有多少代码没执行 ,进入下一次循环
while True:
    print('hello')
    continue
    print('world')

一直输出'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()

输出1-100的值

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会跳出最近得所在得循环

breakj += 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的位置


文章作者: R1ch029
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 R1ch029 !
  目录