• python05_Practice


    1统计输入的字符有多少个?
    知识点:1.输入 2.遍历 3.有储存结果的变量 4.模板字符串
    s=input("请输入一个字符串:“)

    result=0

    for i in s:

      result+=1

    print("输入的内容%s,一共有%s个字符"%(s,result))

    2.统计输入的字符多少个字母和数字?

    思考点:1.输入 2.遍历 3.有存储结果的变量

    4.模板字符串 5.if 判断是数字还是字母?不是数字也不是字母?

    方法一:

    s=input("请输入一个字符串: “)

    letter_count=0

    num_count=0

    for i in s:

    #判断i是否是字母

      if ( i>="a" and i <="z") or ( i>="a" and i <="z")

        letter_count+=1

     #判断是否是数字

       elif  i>="0" and i<="9":

        num_count+=1

    print("输入的内容是%s,一共有%s个字母,一共有%s个数字"%(s,letter_count,num_count))

    方法二:

    import string

    s=input("请输入一个字符串: ")

    letter_count=0

    num_count=0

    for i in s :

    #判断i是否是个字母

      if i in string.ascii_letters:

        letter_count+=1

    #判断i是否是个数字

      elif i in string.digits:

        num_count+=1

    print("输入的内容是%s,一共有%s个字母,一共有%s个数字"%(s,letter_count,num_count))

    3.将字符串中的数字去掉,只保留字母

    知识点:1 字符串可以改变吗?不能

    2.想修改内容?需要把字符串改为list

    3.怎么修改列表的内容?

    s="abc123%*&"

    s=list(s)

    priint(type(s))

    #遍历列表,判断是否是字母,是的话放到一个新列表,不是就忽略

    for i in s:

      if i in string.digits:

        continue

      else:

        result.append(i)

    print(result)

    print("".join(result))

    >>> s="a"
    >>> s
    'a'
    >>> id(s)
    1913517895160
    >>> s+="b"
    >>> s
    'ab'
    >>> id(s)
    1913518918600

    >>> l=[]
    >>> l.append(1)
    >>> l
    [1]
    >>> l=[]
    >>> id(l)
    1913518931720
    >>> l.append(l)
    >>> id(l)
    1913518931720
    >>> l.append(2)
    >>> id(l)
    1913518931720
    >>>

    4.输入3个学生成绩,求和,平均数和最好成绩

    1.存多个数据使用List/tuple/dict,list

    2.输入input

    3.遍历list

    4.求和,求平均值,求最大值

    5,格式化输出

    scores=[ ]

    for i in range(3):

      student_score=input("请输入第%s个学生成绩"%i)

      scores.append(int(student_score))

    score_sum=0

    for i in scores:

      score_sum+=i

    average_score=score_sum/3

    max_score=max(scores)

    print("成绩总和:%s,平均成绩:%s,最佳成绩: %s"%(score_sum,average_score,max_score))

    5.输入一个学生成绩,判断是优良中几个和不及格

    知识点:1.输入 2 类型转换 3 if elif else

    score=input(“请输入一个学生成绩: ”)

    score=int(score)

    if score>=90:

      print("优")

    elif score>=80:

      print("良")

    elif score>=70:

      print("中")

    elif score>=60:

      print("及格")

    else:

      print("不及格")

    6.生成3个随机字母的字符串生成一个随机小数字符串,2 个整数位和2个小数位

    知识点:1,生成一个随机数  2,循环 3 拼接字符串 4 随机生成数字 5.根据ascii码生成字母

    import random

    rangdom_letters=" "

    for i in range(2):

      rangdom_letters+=chr(rangdom.rangdint(97,122))

    print("随机的2个字母四: “,rangdom_letters)

    rangdom_float=str(rangdom.randint(10,99))+"."+

    str(random.randint(10,99))

    方法2:

    random_float=round(random.randint(10,99)+random.random(),2)

    random_float=str(random_float)

    7.统计一个数字中包含奇书数字的个数

    知识点:1.什么叫奇书 2怎么遍历3 数字转字符串 4  if 5多个数据,最后存储到结果中

    num=123232311

    num=str(num)

    result=[ ]

    for i in num:

      if int(i)%2==1:

        result.append(i)

    print("一共有多少个奇书:%s"%len(result))

    8.将数字的每一位+2,转换成一个新数字(整数和小数)

    知识点 :数字转换位字符串,遍历,转换为数字,计算,拼接到一个变量,转换数字

    num=123.65444

    num=str(num)

    result=" "

    for i in num:

      if i!=".":

        result+=str(int(i)+2[:1]

      else:

        result+="."

    print(float(result))

    9.将每个小写字母转换为大写字母,大写字母转换为小写字母

    s="a"

    if s>="a" and s<="z":

      print(chr(ord(s)-32))

    else:

      print(chr(ord(s)+32))

    10.将一个bytes类型的gbk字符串,转为utf-8编码的bytes字符串

    知识点:

    1.默认python字符串类型是Unicode

    2.unicode字符串使用encode后,就变为bytes类型

    3.bytes类型decode后,就变为unicode类型

    4.用什么字符集encode,那么使用decode时候要使用相同的字符集

    s="中国" #unicode

    s=s.encode("gbk")

    s=s.decode("gbk").encode("utf-8")

      

  • 相关阅读:
    C#代码控制tfs
    WindowService 执行命令
    自定义服务端Script控件支持javascript服务端路径?
    asp.net 实现LRC歌词播放
    asp.net ajax使用方法一
    左右两列布局
    XML反序列化一例
    自定义配置节备忘
    使用WTSGetActiveConsoleSessionId()的VISTA服务与桌面交互
    Java web 学习
  • 原文地址:https://www.cnblogs.com/JacquelineQA/p/14088279.html
Copyright © 2020-2023  润新知