栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

2021-10-30

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2021-10-30

Python

一、程序控制流程
1.1顺序结构
自上而下

1.2 选择结构
单分支:
语法结构:
if 条件:
#缩进

#条件满足的语句

注意:python 是严格要求缩进格式的语言(缩进表现层级关系),要么都是缩进(tab)要么都是
空格
if(){
#分支
}
双分支:
if 条件:
#条件满足的语句
else:
#条件满足的语句
多分支:
if 条件:
#条件满足
elif 条件:
#条件满足
elif 条件:

#缩进

………
else:
#条件满足
import math
dir(math) --------- 查看Math库有哪些方法
help(math.pi)

1.3循环结构
(1)while循环
while循环语法结构:
while 循环的条件:
#缩进 循环体

例:
1.计算100以内的奇数和

sum = 0 
n = 1 # n = 99 
while n < 100: # n > 0 
sum += n 
n += 2 # n -= 2 
print(sum)

2.实现两个数的交换

num1 = num2 
# num2 = temp 
# 求和法 
# num1 = num1 + num2 #12 + 21 = 33 
# num2 = num1 - num2 # 33 - 21 =12 
# num1 = num1 - num2 # 33 - 12 = 21 
# 异或交换发 python独有 
num1,num2 = num2,num1 
print("交换后的结果num1=%s,num2=%s"%(num1,num2))

3.打印如下图案

*
**
*** 
**** 
***** 
******
layer = int(input("请输入要打印的行数:")) 
index = 1 
while index <= layer: 
    j = 1 #每行*的个数 
    while j <= index: 
        print("*",end="") 
        j += 1 
    print() index += 1 
# a = int (input ("请输入行数")) 
# x = 1 
# while x <= a: 
#   print("*" *x) 
#   x += 1

4.打印九九乘法表

# index = 1 
# while index <= 9: 
#   j = 1 #每行*的个数 
#   while j <= index: 
#       print("%s X %s = %s "%(index,j,(index*j)),end="") 
#       j += 1 
#   print() 
#   index += 1 
i = 1 
while i <= 9: 
    j = 1 
    while j<=i: 
        res = i * j 
        if res < 10: 
            print("%s X %s = %s "%(i,j,(i*j)),end="") 
        else:
            print("%s X %s = %s "%(i,j,(i*j)),end="") 
        j += 1 
    print() 
    i += 1

5.判断一个数是否为质数(素数)

num = eval(input('请输入一个数字:')) 
if num <= 1: 
    print('这不是质数') 
elif num == 2: 
    print('这是一个质数!') 
else:
    i=2 
    while i < num: 
        if num%i == 0: 
            print('这不是一个质数') 
            break 
        i += 1 
    else:
        print ('这是一个质数!')

6.猜单词

在这里插入代码片

(2)for循环
for each for in
for in ----- 遍历容器
for 变量 in 容器:
#缩进
#循环体
for in循环主要用于遍历可迭代对象(python是一种数据类型------容器)
求:遍历1-100
range() ---------- 范围的意思 ------ 前闭后开
range(参数) ---------------表示从0开始到参数结束打印此区间所有的整数,前闭后开
range(参数1,参数2)-------------表示打印参数1到参数2区间内的整数,前闭后开
range(参数1,参数2,step)------表示打印参数1到参数2区间内的整数,数据的变化随step的变化而
变化,默认的step的值为1,前闭后开
range(10) range(10,20) range(10,20,2)

break ------- 跳出循环
continue ---------- 继续循环
例·:
1.计算0~100以内所有偶数和 (用for循环)

sum = 0 
# for i in range(101): 
#   if i % 2 == 0: 
#       sum += i 
for i in range(0,101,2): 
    sum += i 
print("0~100内偶数和是:",sum)

2.计算0~100以内所有奇数和

 

3.一个自然数与3的和是5的倍数,与3的差是6的倍数,求这个自然数?

index = 0 
while True: 
    if (index +3) %5 ==0 and (index -3) % 6 == 0: 
        print(index) 
        break 
    index += 1

4、在400~500之间求一个数,它被2除余1,被5除余3,被8除余1,这个数是多少?

for i in range(400,501): 
    if i % 2 == 1 and i %5 == 3 and i % 8 ==1: 
        print(i)

5.打印等腰三角形

      * 
     ***
    *****
   *******
layer = int(input("请输入你要打印的行数:")) 
for i in range(1,layer+1): 
    #计算空格的个数 
    space_num = layer - i 
    for j in range(0,space_num): 
        print(" ",end="") 
    #计算*个数 
    star_num = 2*i-1 
    for j in range(0,star_num): 
        print("*",end="") 
    print("")

6.打印菱形

      *
     *** 
    ***** 
   ******* 
    ***** 
     ***
      *
layer = int(input("请输入你要打印的行数:")) #上半部分 for i in range(1,layer//2+2): #前闭后开 #计算空格的个数 space_num = layer - i for j in range(0,space_num): print(" ",end="") #计算*个数 star_num = 2*i-1 for j in range(0,star_num): print("*",end="") print("") #下半部分 for i in range(layer//2,0,-1): #计算空格的个数 space_num = layer - i for j in range(0,space_num): print(" ",end="") #计算*个数 star_num = 2*i-1 for j in range(0,star_num): print("*",end="") print("")

二、容器
什么是容器?为什么要学习容器?
容器:存放多个元素的一种数据类型
列表 集合 元组 字典

2.1列表(list(线性表))
常见线性表(数组 栈 队列 链表(单链表和双链表))-------基于链表实现的(双链表)
注意:python里面没有数组(存储的连续的,所以删除比较慢)
栈 :后进先出
队列:先进先出
定义方式:
(1)基于弱数据类型语言的定义
ls = [1,2,3,4,5]
(2)通过全局函数list()定义
ls = list()
ls2 = list([1,2,3,4,5])
type(ls) ----- 判断类型
如何获取元素?
通过下标获取,从0开始,如果下标超过列表的最大下标值,会报错
通过下标可以修改列表里面的某个元素
如何遍历列表?(每个元素)

for i in ls: 
     print(i)  
index = 0 
while index < len(ls): 
     print(ls[index]) 
     index += 1

常用方法:
append() -------- 向列表的尾部添加元素
insert(index,object) -------- 向指定的下标处添加元素
sort()-------- 进行排序(从下到大 int类型)可以对字母进行排序(ASCII值)类型不能混
index()-------- 返回的是元素在列表中的第一个位置
reverse()------------ 将列表进行翻转
remove()---------- 删除某个元素,如果有重复,删除的是第一次出现的元素,如果元素不存在会
报错
count()-------- 返回的是某个元素在列表里面的个数
clear()--------- 清除元素
copy()-------- 浅拷贝对象 不等价与 =
extend()-------- 合并列表
pop()-------删除列表尾部的元素(与append相反),返回删除的元素,pop(i) i指的是下标
补充:
1、通过下标可以直接更改列表里面某一个元素的值
2、列表里的元素类型可以多个类型

ls = [1,2,3,[1,2,3],5,6] 
ls = ["python","c","java",["数据结构与算法","数据库","计算机组成原理"],"c#",["英语","数 学","语文"],"js"]

3、

ls = [] 
len(ls) 
0

2.2集合 set ------哈希表
定义方式:
(1)set() 全局函数 s = set()
(2)s = {1,2,3} ---------- 弱数据类型语言 {} ------- 集合
底层是基于hash表实现?
集合无序的,不能重复的(集合里面的元素是唯一的,无序并不是顺序)
s[0] ?--------- 报错 ,不可以访问 因为是无序
clear ---------- 清除
copy
remove ------ 如果元素不存在会报错
pop
add ------ 添加 ,添加重复的元素的时候不会报错,但是不能成功添加,因为集合元素不能重复
difference ------- 差集
intersection------- 交集
union ------- 并集
update ----- 更新意思 更新集合(合并集合)
discard-------- 移除元素,移除不存在的元素的时候,不会报错

2.3 元组(tuple)
有序的 ------- 通过下标获取元素
元组定义:
(1)t = tuple()
(2)t = (1,2,3) ------- 弱数据类型语言
ls = [1,2,3,[1,2,3],5,6] ls = [“python”,“c”,“java”,[“数据结构与算法”,“数据库”,“计算机组成原理”],“c#”,[“英语”,“数 学”,“语文”],“js”] ls = [] len(ls) 0
特点:
1、通过下标获取元素
2、元组是一个不可变(指向不可变)类型,但是元组里面的元素可以是可变类型
(1, 2, 3, [‘A’, ‘B’], 4)
(1, 2, 3, [‘X’, ‘Y’], 4)
变化的角标3处List里面的元素
count
index
注意:能用元组的情况下尽量不要用列表
面试题:t =(1) 判断一下t的类型?
答案: int
如何定义一个元组只有一个元素?
答案:t = (1,)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/357556.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号