zoukankan      html  css  js  c++  java
  • python 入门级程序算法

    条件语句的基础程序

    # 设置条件的时候,一般从少数的地方入手
    count = 1
    while count <= 3:
        print(count)   #可替代内容
        count +=1
    # 求和
    count = 1
    sum = 0
    while count <101:
        sum += count
        count += 1
    print(sum)

    for循环的基础程序

    # 列表中for 循环控制索引位置
    list1 = [1,2,3,4,4,5,6,]
    for i in range(len(list1)):
        print(i,list1[i])
    # range具有切片的功能,所有可以妙用
    Lis = []
    for i in range(0,101,2):
        Lis.append(i)
    print(Lis)    #将0-100内的偶数打印出来
    # 敏感词屏蔽
    li = ["苍老师", "东京热", "武藤兰", "波多野结衣"]
    new_li = []
    GetInput = input('请评论:')
    for i in li:    #在设置一个循环的时候要确定一个循环的范围,并且要确定是否需要全部遍历后
        # 才操作还是遍历每一个元素的时候就进行操作
        if i in GetInput:
            GetInput = GetInput.replace(i,'*'*len(i))
    new_li.append(GetInput)
    print(new_li)
     # 常用的遍历字典常用的两种方法
    dic = {1:1,2:2}
    # 方法1
    for a,b in dic.items():#通过解包
        print(a,b)
    # 方法2
    for i in dic:#通过key值
        print(i,dic[i])
    # range的常用方法
    range(10)
    range(1,10)
    range(n,m,p) #与切片一样分别代表的是[start ,end) 和step
    for i in range(100,0,-2):
        print(i,end='	')
    list1 = [1,2,3,4,5]
    for i in range(1,len(list1)):
        list1.pop()#在循环一个列表的时候删除另一个列表的内容
    计算某个城市车牌的数量cars = ["鲁A32444", "鲁B12333","鲁A32444", "鲁B12333","鲁A32444", "鲁B12333", "京B8989M", "黑C49678", "黑C46555", "沪B25041"]
    locations = {'': "上海", "": "黑龙江", "": "山东", "": "湖北", "": "湖南", "": "北京"}
    # 结果
    方法一
    result = {} for car in cars: # 车牌子 "鲁A32444" c = car[0] # local = locations[c] # 山东 # 第五天。 字典。 新增和查询 去代码里找 # result[local] = result.setdefault(local, 0) + 1 if result.get(local): # 原来出现过 result[local] = result[local] + 1 else: # 第一次出现 result[local] = 1

    方法二
    dic = {}
    for a in cars:
    dic[Locals[a[0]]] = dic.setdefault(Locals[a[0]],0)+1
    print(dic)
    #99乘法表
    for i in range(1,10):
        for j in range(1,i+1):
            print('%s * %s= %s	'%(j,i,i*j),end = '')
        print()
    #注意的有坑
    k ='123'
    gg = ''
    for i in k:
        gg+=i
        print(gg)
    for i in range(2,2):
        print(i)
    else:
        print('gg')

    #
    倒金字塔函数算法 def gg(n): for i in range(1,n+1): for a in range(i): print('_',end = '') for b in range(2*(n-i)+1): print('*',end = '') print()
    n表示的是行数,由于是第几行就显示几个'_' 所以第二层循环直接使用i作为打印的次数,因为每行*的个数等于总行数-当前行号*2 -1
    所以以此作为循环的次数,执行完下面两个打印的循环之后,通过print()中一个默认的换行符进行换行

    # 求1-100内所有的质数的和
    def func(n): # 只能被1和自身整除的数
        if n == 1: # 特殊处理的
            return False
        # n / 2, 3, 4, 5, 6, 7, 8, 9....n-1
        for i in range(2, n):
            if n % i == 0: # 不是质数
                return False
        else:
            return True
    print(func(2))
    sum = 0
    for i in range(1, 101):
        if func(i): # 如果是质数. 帮我累加
            sum += i
    print(sum)

    普通二分法

    lst = [4, 56, 178, 253, 625, 1475, 2580, 3574, 15963]
    gg = int(input('请输入一个数字'))
    Left = 0
    Right = len(lst)-1
    while Left <= Right:
        Mid = (Left+Right)//2
        if gg < Mid :
            Right = Mid-1
        elif gg > Mid :
            Left = Mid +1
        else:
            print('找到了')
            break
    else:
        print('列表中没有')
  • 相关阅读:
    《JavaScript高级程序设计》读书笔记 14章
    C# 程序集是啥
    C#之反射又是什么东西
    C#版 大数计算器加法
    C#版 大数计算器乘法
    我所认识的三层
    《JavaScript高级程序设计》读书笔记 56章
    C# 委托加深理解
    C#版 大数计算器减法
    C# 事件到底是什么
  • 原文地址:https://www.cnblogs.com/vivi0403/p/9892744.html
Copyright © 2011-2022 走看看