《python语言程序设计》2018版第8章第14题金融:信用卡号合法性 利用6.29题

请添加图片描述

一、之前6.29题我做的代码

这是用数字来进行分辨的

is_txt = 4383576018402626 #合法def split_the_data_even(vis_n):current_a1 = vis_n // 10000a_t1 = vis_n % 10000# print("1th", a_t1)a_t2 = current_a1 % 10000# print("2th", a_t2)current_a3 = current_a1 // 10000a_t3 = current_a3 % 10000# print("3th", a_t3)a_t4 = current_a3 // 10000# print("4th", a_t4)even1 = a_t1 % 10even2 = a_t1 // 100 % 10even3 = a_t2 % 10even4 = a_t2 // 100 % 10even5 = a_t3 % 10even6 = a_t3 // 100 % 10even7 = a_t4 % 10even8 = a_t4 // 100 % 10return even1, even2, even3, even4, even5, even6, even7, even8# 奇数
def split_the_data_odd(vis_n):current_a1 = vis_n // 10000a_t1 = vis_n % 10000# print("1th", a_t1)a_t2 = current_a1 % 10000# print("2th", a_t2)current_a3 = current_a1 // 10000a_t3 = current_a3 % 10000# print("3th", a_t3)a_t4 = current_a3 // 10000# print("4th", a_t4)odd1 = a_t1 // 10 % 10odd2 = a_t1 // 100 // 10#odd3 = a_t2 // 10 % 10odd4 = a_t2 // 100 // 10#odd5 = a_t3 // 10 % 10odd6 = a_t3 // 100 // 10#odd7 = a_t4 // 10 % 10odd8 = a_t4 // 100 // 10return odd1, odd2, odd3, odd4, odd5, odd6, odd7, odd8def mult_num_odd(int_num, m_num):a = int_num * m_numif a >= 10:div_a1 = a // 10div_a2 = a % 10return div_a1 + div_a2elif a == 0:return aelse:return adef odd_add(visa_txt):a_text = split_the_data_odd(visa_txt)temp_text = 0for i in a_text:temp_text += mult_num_odd(i, 2)return temp_textdef even_add(visa_txt):even_text = split_the_data_even(visa_txt)temp_text = 0for i in even_text:temp_text += ireturn temp_textdef is_valid(visa_text):a = odd_add(visa_text) + even_add(visa_text)if a % 10 == 0:print(f"This visa code {visa_text} is valid!")else:print(f"This visa code {visa_text} is not valid!")print("Sorry! again input, or call worker!")print(a)is_valid(vis_txt)

请添加图片描述
顺便说一句驼峰在win系统里还好使,到mac的python就一顿贬低的报错.

二、本题是用字符串来做,原谅我,我有暗自骂了作者

也就是说我将数字变成字符串.那么我就不能用整除、除于,只能用字符串和循环来完成

2024.09.06
我现在不明白这个大哥到底什么意思??
字符串不能加减乘除呀。字符串更不能进行什么换算。
我到底要验证什么呢
通过字符串验证什么呢

2024.9.9
应急局不知道哪天来抽查, 我还有19日到20日的全天培训,
真的和我此时的代码一样.
停了这么久,今天突然想开了.
将整数转成字符串,然后再识别会数字.但是用循环就比较 失败了.

def if_digit(num):if num == "0":return 0elif num == "1":return 1elif num == "2":return 2elif num == "3":return 3elif num == "4":return 4elif num == "5":return 5elif num == "6":return 6elif num == "7":return 7elif num == "8":return 8elif num == "8":return 8elif num == "9":return 9def run_text(num_t,text_about):for i in range(0, num_t):return if_digit(text_about[i])a = run_text(len_num,str_vis_text)
print(a)

这段代码只显示4.
我就不截图了
如果你只输出可以得到数列但是往往不能计算了

for i in range(0, num_t):return if_digit(text_about[i])

如果不用光用 循环可以显示整个数列,但是还不能当成一个完整的整数列,来用.
终于我忍不住换了使用python的保留名字之一的
isalnum()这哥们有点敌我不分
isdigit()还是它比较好


if str_vis_text.isdigit() is False:print("This str word is worry!")
else:text_to_integer = int(str_vis_text)is_valid(text_to_integer)

成功了.if代表 如果字符串里有字母.则返回真
else:代表如返回否,则开始将字符串变沉整数序列,然后放到直接做好的函数is_valid

请添加图片描述

请添加图片描述

请添加图片描述
请添加图片描述

两个结果,两种效果.明天顺利

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/879140.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python设计模式实战:开启软件设计的精进之旅

🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…

Elasticsearch7.x 集群迁移文档

一、集群样例信息 集群名称:escluster-ali-test 1、源集群:(source_cluster) 节点IP节点名称节点角色是否为master节点10.200.112.149es2.gj1.china-job.cndata,master是10.200.112.151es1.gj1.china-job.cndata,master否10.200.112.153es…

【VUE】11、安装nvm管理多个版本的node.js

1、简介 nvm 全称为 Node Version Manager,即 Node.js 版本管理器。它是一个用于在同一台机器上管理多个 Node.js 版本的工具。通过 nvm,用户可以轻松地安装、切换、卸载不同版本的 Node.js,而无需担心版本冲突或环境变量配置问题。这使得开…

python绘制3D瀑布图

成品: 代码: def line_3d(x, y, z, x_label_indexs):"""在y轴的每个点,向x轴的方向延伸出一个折线面:展示每个变量的时序变化。x: x轴,时间维,右边。y: y轴,变量维,…

Ubuntu20.04 Docker中换apt源实录 (安装vim过慢解决方案)

1. 查看/etc/os-release $ cat /etc/os-releasePRETTY_NAME"Debian GNU/Linux 12 (bookworm)" NAME"Debian GNU/Linux" VERSION_ID"12" VERSION"12 (bookworm)" VERSION_CODENAMEbookworm IDdebian HOME_URL"https://www.debian…

《OpenCV计算机视觉》—— 图像形态学(腐蚀、膨胀等)

文章目录 一、图像形态学基本概念二、基本运算1.简单介绍2.代码实现 三、高级运算1.简单介绍2.代码实现 一、图像形态学基本概念 图像形态学是图像处理科学的一个独立分支,它基于集合论和数学形态学的理论,专门用于分析和处理图像中的形状和结构。图像形…

linux学习之线程2:线程控制与使用

铺垫 之前我们提到,Linux不直接对线程进行调度,而是对轻量级进程进行调度。但用户就想像Windows那样直接对线程进程控制。所以,就有了pthread库来封装了一层。 那么想要进行线程控制,要用pthread库。(pthread库是原生…

Java面试题-基础和框架-Java面试题三

JMM 8 Q1:JMM 的作用是什么? Java 线程的通信由 JMM 控制,JMM 的主要目的是定义程序中各种变量的访问规则。变量包括实例字段、静态字段,但不包括局部变量与方法参数,因为它们是线程私有的,不存在多线程竞…

Spire.PDF for .NET【文档操作】演示:创比较 PDF 文档

PDF 已成为跨不同平台共享和保存文档的标准格式,在专业和个人环境中都发挥着无处不在的作用。但是,创建高质量的 PDF 文档需要多次检查和修订。在这种情况下,了解如何有效地比较 PDF 文件并找出它们的差异变得至关重要,这使文档编…

《Python编程:从入门到实践》外星人入侵

一、规划 在游戏《外星人入侵》中,玩家控制着一艘最初出现在屏幕底部中央的飞船。玩家可以使用箭头键左右移动飞船,还可使用空格键进行射击。游戏开始时,一群外星人出现在天空中,他们在屏 幕中向下移动。玩家的任务是射杀这些外星…

潘多拉的盒子还是阿拉丁的神灯:揭示RAG噪声在大语言模型中的作用

一、结论写在前面 论文来自清华大学、北京国家信息科学与技术研究中心 论文标题:Pandora’s Box or Aladdin’s Lamp: A Comprehensive Analysis Revealing the Role of RAG Noise in Large Language Models 论文链接:https://arxiv.org/pdf/2408.135…

Prompt - 将图片的表格转换成Markdown

Prompt - 将图片的表格转换成Markdown 0. 引言1. 提示词2. 原始版本 0. 引言 最近尝试将图片中的表格转换成Markdown格式,需要不断条件和优化提示词。记录一下调整好的提示词,以后在继续优化迭代。 1. 提示词 英文版本: You are an AI as…

C/C++ let __DATE__ format to “YYYY-MM-DD“

C/C let DATE format to “YYYY-MM-DD” code&#xff1a; #include <iostream> #include <string>class compileDate {// 静态函数&#xff0c;用来格式化并返回编译日期 static std::string formatCompileDate() {// 编译时的日期&#xff0c;格式为 "MMM…

【包教包会】CocosCreator3.x拖尾MotionStreak威力加强版(支持3.x、支持原生、可合批)

将去年写的2.x拖尾升级到3.x 完美适配Web、原生平台&#xff08;其余平台没测过&#xff09;。 保留原版功能&#xff08;拖尾会跟随节点位移、缩放、受节点透明度影响&#xff0c;但不会跟随节点旋转&#xff09; 支持世界坐标 / 本地坐标切换&#xff08;至于为什么需要这…

10.Shell 截取字符串

Shell 截取字符串通常有两种方式&#xff1a;从指定位置开始截取和从指定字符&#xff08;子字符串&#xff09;开始截取。 从指定位置开始截取 这种方式需要两个参数&#xff1a;除了指定起始位置&#xff0c;还需要截取长度&#xff0c;才能最终确定要截取的字符串。 既然…

提升汽车行业软件质量:ASPICE培训的关键实践方法

ASPICE&#xff08;汽车行业软件过程改进和能力确定&#xff09;培训是一种针对汽车行业软件开发和维护过程的标准化培训。 该培训旨在帮助组织提高其软件开发和维护过程的质量和效率。以下是ASPICE培训的一些最佳实践方法&#xff1a; 1. 理解ASPICE框架&#xff1a;首先&…

[论文笔记]LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale

引言 今天带来第一篇量化论文LLM.int8(): 8-bit Matrix Multiplication for Transformers at Scale笔记。 为了简单&#xff0c;下文中以翻译的口吻记录&#xff0c;比如替换"作者"为"我们"。 大语言模型已被广泛采用&#xff0c;但推理时需要大量的GPU内…

Python存储与读写二进制文件

技术背景 一般情况下我们会选择使用明文形式来存储数据&#xff0c;如json、txt、csv等等。如果是需要压缩率较高的存储格式&#xff0c;还可以选择使用hdf5或者npz等格式。还有一种比较紧凑的数据存储格式&#xff0c;就是直接按照二进制格式存储。这种格式下&#xff0c;存储…

ArgoUML与StarUML的安装

ArgoUML与StarUML的安装 说明&#xff1a; 首次发表日期&#xff1a;2024-09-07ArgoUML 官网&#xff1a; https://argouml-tigris-org.github.io/tigris/argouml/StarUML 官网&#xff1a; https://staruml.io/ ArgoUML 以下内容基于&#xff1a; https://blog.csdn.net/h…

2024年智能录屏解决方案全攻略,从桌面到云端

如果你有过录屏经验那你一定遇到过被限制录制时长或者录制的画面比较模糊之类的情况。这次我我推荐几款免费录屏软件&#xff0c;让我们可以更自由的录制屏幕画面。 1.福晰REC大师 链接&#xff1a;www.foxitsoftware.cn/REC/ 这款软件便捷好操作&#xff0c;而且符合我这次…