一、99乘法表

  

1.1 技术点

  记住:

  for 循环的使用,以及for的嵌套使用

  range()的使用,掌握sep为负数的使用的使用。

  print() 函数的使用,默认的结尾的换行符 替换 end= ' '

  f-format的使用,控制字符的宽度 {x:4}  这样x的输出即使4个字符的

1.2 代码部分

  1. 版本1:数字版本 使用f-format的宽度来控制格式化对齐
    for i in range(9, 0, -1):
  2. for j in range(1,i+1):
  3. print(f'{j}*{i}={i*j:2}', end=' ')
  4. print()
  5.  
  6. 版本2:使用字符串的方式来控制格式化对齐
  7. for i in range(9, 0, -1):
  8. for j in range(1, i+1):
  9. print(f'{j}*{i}={str(i*j).ljust(2)}', end=' ')
  10. print()
  11. 版本3:中文版本的数字,就是用到列表索引的转换
  12. ch_num = ['零','一','二','三','四','五','六','七','八','九']
  13. # print(ch_num[0])
  14. for i in range(9, 0, -1):
  15. for j in range(1, i+1):
  16. result = str(i*j).zfill(2) # 用字符0去填充
  17. left = ch_num[int(result[0])]
  18. right = ch_num[int(result[1])]
  19. if int(result) > 9:
  20. print(f'{ch_num[j]}*{ch_num[i]}={left}十{right}', end=' ')
  21. else:
  22. print(f'{ch_num[j]}*{ch_num[i]}={right:5}', end=' ')
  23. print()

二、token生成器

2.1 技术点解决 

  • random 标准库随机取数值

    使用random.choice方法(另外有一个choices使用方法比较复杂就不使用那个了)

      ranmdom.choice(seq) 从一个序列中返回一个元素

  • string 标准库东西

    是一个字符串常亮的集合。可以用于枚举acsII码的字符,这样我们就不用手写一大堆集合了。

    help查看里面的数据

      

  • 字符串与数字的这练习 join方法
  1. >>> s = ['a','b','c','d','e']
  2. >>> ''.join(s)
  3. 'abcde'
  4. >>> s = ['a','b','c','d','e',1,2]
  5. >>> ''.join(s)
  6. Traceback (most recent call last):
  7. File "<stdin>", line 1, in <module>
  8. TypeError: sequence item 5: expected str instance, int found
  9. >>> s = ['a','b','c','d','e','','']
  10. >>> ''.join(s)
  11. 'abcde12'

join方法练习

  • 列表与列表推导式

    append 向一个列表中添加元素

     列表推导式:

  1. import random
  2. li=[x for x in range(5)]
  3. print(li)
  4.  
  5. # 前面部分不一定要跟后面的x有关系,后面只是控制次数
  6. li=[random.choice('defijjdiw31') for x in range(5)]
  7. print(li)
  8.  
  9. #因为x,只是用于控制次数,我们可以用 _ 来代替,节省内存空间
  10. count = int(input())
  11. li=[random.choice('defijjdiw31') for _ in range(count)]
  12. print(li)

列表推导式

2.2 代码

  

  1. #### 第一版本 lowb版本
  2. '''
  3. import random
  4. token = []
  5. count = int(input()) # 输入要生成几位的随机数
  6.  
  7. for i in range(count):
  8. x = random.choice('asdeadasd1234567')
  9. token.append(x)
  10. token = ''.join(token)
  11. print(token)
  12. '''
  13.  
  14. #### 第二版本 string 版本
  15.  
  16. import string, random
  17. token = []
  18. s = string.ascii_letters + string.digits
  19. count = int(input())
  20. for i in range(count):
  21. x = random.choice(s)
  22. token.append(x)
  23. print(''.join(token))
  24.  
  25. #### 第三版本 列表推导版本
import string, random
count = int(input())
s = string.ascii_letters + string.digits
''.join([random.choice(s) for _ in range(count)])
 
#### 除此之外 还可以 使用char()内置函数,定义ascii中的字母的数值的边界来完成

三、字典小工具

  1. '''
  2. 字典小程序:
  3. 1.可以查询单词
  4. 2.可以自定义补充单词
  5. 3.可以删除某个单词
  6. '''
  7.  
  8. print('欢迎来到LH的字典王国'.center(30, '-'))
  9.  
  10. my_dict = {'中文':'Chinese','书':'book','西瓜':'watermelon'}
  11.  
  12. querry = input('请输入要查询的中文:').strip()
  13. # 查询的中文,去除两边的空格
  14.  
  15. if my_dict.get(querry):
  16. print(f'你查询的中文为:{querry},意思是:{my_dict[querry]}')
  17. else:
  18. add = input('没有查询到,是否愿意为小词扩产词库(y/n)').strip()
  19. #避免输入的时候,多加了空格,先去除两边的空格
  20. if add == 'y':
  21. print(my_dict)
  22. print('谢谢帮助,请添加单词和相关解释,用冒号分割,')
  23. words = input('实例:(书:book)').strip()
  24. if len(words.split(':')) == 2: # 使用英文冒号分割
  25. words = words.split(':')
  26. my_dict[words[0]] = words[1]
  27. elif len(words.split(':')): # 使用中文冒号分割
  28. words = words.split(':')
  29. my_dict[words[0]] = words[1]
  30. else:
  31. print('输入有错,请按照正确的方式')
  32. print(my_dict)
  33. else:
  34. print('')

练习-99乘法表 token生成器 翻译小工具的更多相关文章

  1. javascript小实例,实现99乘法表及隔行变色

    人生短暂,废话不多说,直奔主题! 这个小实例的要求: 实现在页面中输出99乘法表.(要求:以每三行为一组,实现隔行变色(颜色为白,红,黄(也可自己定义)),鼠标滑过每一行,行背景颜色变为蓝色,鼠标离开 ...

  2. python(7)- 小程序练习:循环语句for,while实现99乘法表

    打印99乘法表 for 循环语句实现: for i in range(1,10): for j in range(1,10): print(j,"x",i,"=" ...

  3. Python,for循环小例子--99乘法表

    一.99乘法表 for i in range(1, 10): for j in range(1, i + 1): print('%sx%s=%s ' % (j, i, j * i), end='') ...

  4. JavaScript——99乘法表

    <!DOCTYPE html> <html> <head> <title>99乘法表</title> <style type=&quo ...

  5. js实现99乘法表

    实现99乘法表(输出到页面上) * document.write("<table border='1' bordercolor='blue'>"); //循环行 9 f ...

  6. python打怪之路【第一篇】:99乘法表

    需求:实现99乘法表 代码: #!/usr/bin/env python # -*- coding:utf-8 -*- #author chenjing for i in range(10): for ...

  7. For循环练习之99乘法表和转义字符

    之前说了for循环的概念以及常用到的操作,那么我们接下来做几个巩固练习: 1.打印99乘法表: 99乘法表的形式: 1*1 = 1 1*2 = 2 2*2 = 4 1*3 = 3 2*3 = 6 3* ...

  8. JavaScript--循环--打印星星和99乘法表

    1.打印99乘法表 function chengfa(){ //反复调用公式 for(var r=1;r<=9;r++){ for(var i=1,str="";i<= ...

  9. Python之打印99乘法表

    本脚本实现打印99乘法表 #!/usr/bin/python #9*9 for i in range(1,10): print for j in range(1,i+1): print "% ...

随机推荐

  1. java反射之构造方法(三)

    一. 1. 二.获取类的构造方法信息. ######################################################################## 三.

  2. $ 一步一步学Matlab(1)——初识Matlab

    本文分四步走策略:第一,Matlab是个什么玩意:第二,为什么要学Matlab:第三,怎样轻松.无痛.少走弯路地学习Matlab:第四,怎样写一个Matlab的Hello World.通过这四步走,达 ...

  3. Visual C++的DLL

    动态链接库 (DLL) 是作为共享函数库的可执行文件. 动态链接提供了一种方法,使进程可以调用不属于其可执行代码的函数. 函数的可执行代码位于一个 DLL 中,该 DLL 包含一个或多个已被编译.链接 ...

  4. JAVA面试题整理(1)-基础

    1.List 和 Set 的区别  共同点:它们都是Collection的子接口 区别: List:这个接口能够精准的记录每一个元素的插入位置(换句话说就是这个接口内容所有元素是按照顺序去保存的),使 ...

  5. 20145216史婧瑶《Java程序设计》第7周学习总结

    20145216 <Java程序设计>第7周学习总结 教材学习内容总结 第十三章 时间与日期 13.1 认识时间与日期 就目前来说,即使标注为GMT(无论是文件说明,或者是API的日期时间 ...

  6. DDR4中的so-dimm 和component

    so-dimm :Small Outline Dual In-line Memory Module (小型双列直插式内存模块) component:直接焊接的ddr4芯片

  7. hadoop系统的端口

    hadoop系统部署时用到不少端口.有的是Web UI所使用的,有的是内部通信所使用的,有的是监控所使用的.实际系统中可能用于防火墙的端口设计.一些内部通信用的端口可能也需要外部能访问.如两个集群的数 ...

  8. mac下搭建基于vue-cli 3.0的Element UI 项目

    1.安装yarn管理工具(包含node.js); 2.安装全局vue-cli全家桶: yarn global add @vue/cli 3.创建.测试一个vue-cli项目: vue create a ...

  9. JVM 内存调优 与 实际案例

    堆内存设置 原理 JVM堆内存分为2块:Permanent Space 和 Heap Space. Permanent 即 持久代(Permanent Generation),主要存放的是Java类定 ...

  10. Mysql事物的4种隔离级别

    SQL标准定义了4种隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的. 低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销. 首先,我们使用 test 数据库, ...