扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
【常见的内置函数】
成都创新互联专注于东西湖网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供东西湖营销型网站建设,东西湖网站制作、东西湖网页设计、东西湖网站官网定制、微信小程序定制开发服务,打造东西湖网络公司原创品牌,更为您提供东西湖网站排名全网营销落地服务。
1、enumerate(iterable,start=0)
是python的内置函数,是枚举、列举的意思,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。
2、zip(*iterables,strict=False)
用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用*号操作符,可以将元组解压为列表。
3、filter(function,iterable)
filter是将一个序列进行过滤,返回迭代器的对象,去除不满足条件的序列。
4、isinstance(object,classinfo)
是用来判断某一个变量或者是对象是不是属于某种类型的一个函数,如果参数object是classinfo的实例,或者object是classinfo类的子类的一个实例,
返回True。如果object不是一个给定类型的的对象, 则返回结果总是False
5、eval(expression[,globals[,locals]])
用来将字符串str当成有效的表达式来求值并返回计算结果,表达式解析参数expression并作为Python表达式进行求值(从技术上说是一个条件列表),采用globals和locals字典作为全局和局部命名空间。
【常用的句式】
1、format字符串格式化
format把字符串当成一个模板,通过传入的参数进行格式化,非常实用且强大。
2、连接字符串
常使用+连接两个字符串。
3、if...else条件语句
Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。其中if...else语句用来执行需要判断的情形。
4、for...in、while循环语句
循环语句就是遍历一个序列,循环去执行某个操作,Python中的循环语句有for和while。
5、import导入其他脚本的功能
有时需要使用另一个python文件中的脚本,这其实很简单,就像使用import关键字导入任何模块一样。
由程序的要求我们可以得到,找50元的5张,找5元的6张,找1元的3张。可以直接用取余等操作算出来,或者用贪心思想解决问题,但是用取余简单。
正确代码:
count=283
x = int(count/50)
y = int((count-x*50)/5)
z=count-(x*50)-(y*5)
print('找零{}元其中\n50元:{}张\n5元: {}张\n1元: {}张\n'.format(count,x,y,z))
扩展资料:
Python的优缺点:
优点:
1、简单,Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。
2、易学,Python极其容易上手,因为Python有极其简单的说明文档。
3、速度快,Python 的底层是用 C 语言写的,很多标准库和第三方库也都是用 C 写的,运行速度非常快。
4、免费、开源,Python是FLOSS(自由/开放源码软件)之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。
5、高层语言,用Python语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
6、可移植性,由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。
7、解释性,一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。
8、规范的代码,Python采用强制缩进的方式使得代码具有较好可读性。而Python语言写的程序不需要编译成二进制代码。
缺点:
运行速度慢:这里是指与C和C++相比。
参考资料来源:百度百科-Python
这个题目很有意思,外国教材中的作业题目都很精彩。
因为它没有限制零钱的数量,所以只需要按从大到小的顺序找钱就可以了。 这是一个取整运算。
给你讲一个原理,你自己完成细节。
假设商品价格是Y, 客户给钱数是Z, 那么Z-Y的余数就是要找的零钱。
Z-Y的数量依次被50,20,10,5纸币来除,如果还有小数,除不尽,那么继续使用2,1,0.25等等的硬币去除。最终应该刚好除尽。 为了防止浮点运算误差。可以一开始就将Z和Y乘以100,再转换成整数。这样就没有问题了。
求余使用的运算符是%,百分号。 你需要将50,20,10.。。2,1,0.25.。。等等放到一个数组里,依次除,如果余数为0,则break。
没看懂你的需求,不过出错的原因是因为除号用错了,下面这样就行了
# -*- coding: cp936 -*-
def main():
j=input("输入价格:(元)")
zz=(1-j)*100
a1,a2=zhaolin(zz,50)
b1,b2=zhaolin(a2,20)
c1,c2=zhaolin(b2,10)
d1,d2=zhaolin(c2,5)
e1,e2=zhaolin(d2,2)
f1,f2=zhaolin(e2,1)
print a1,b1,c1,d1,e1,f1
def zhaolin(x,y):
z=x/y
w=x-x/y*y
return z,w
main()
修改了一下,应该满足了你的要求了。
# -*- coding: cp936 -*-
def main():
j=input("输入价格:(元)")
zz = 100 - j*100
zhaolin2(zz)
# a1,a2=zhaolin(zz,50)
# b1,b2=zhaolin(a2,20)
# c1,c2=zhaolin(b2,10)
# d1,d2=zhaolin(c2,5)
# e1,e2=zhaolin(d2,2)
# f1,f2=zhaolin(e2,1)
# print a1,b1,c1,d1,e1,f1
def zhaolin(x,y):
z=x/y
w=x-x/y*y
return z,w
def zhaolin2(x):
linqian_jiao = [50,20,10]
for i in linqian_jiao:
x_tmp = x/i
if x_tmp = 1:
x_tmp = int(x_tmp)
x = x - i*x_tmp
jiao = i/10
print '找您'+ str(x_tmp) + '个' + str(jiao) + '角硬币;'
linqian_fen = [5,2,1]
for i in linqian_fen:
x_tmp = int(x//i)
if x_tmp =1:
x_tmp = int(x_tmp)
x = x - i*x_tmp
x_tmp = int(x_tmp)
print '找您'+ str(x_tmp) + '个' + str(i) + '分硬币;'
main()
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流