一个python 编写api接口的编写疑问

python疑问_百度知道
python疑问
p>写一个function,但是有问题.jpg" esrc="http:要求用recursion编写,然后return the string of the digits.baidu.baidu.baidu.jpg" esrc="/zhidao/pic//zhidao/pic/item/f636afcd9da.hiphotos://c.com/zhidao/wh%3D450%2C600/sign=79d20ca5edf81a4c2667e4cde21a4c6f/b738ddc96b2f3b51bb051f919ec07.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src="http://f://c,numbers(s).com/zhidao/wh%3D450%2C600/sign=fa9d12ca0a246ff3f76de29/f636afcd9da。下面是我自己初步写的code,不能用loop.hiphotos。如果碰到empty string或者string里面没有数字.hiphotos,则返回empty string &#39.baidu.hiphotos.&#39.hiphotos。s是string://f.com/zhidao/wh%3D600%2C800/sign=87fe35e86d63fb774c7c0/b738ddc96b2f3b51bb051f919ec07.结果如下图所示。运行第三个是只会返回‘543’
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁一个python编程题目——面向对象的_百度知道
一个python编程题目——面向对象的
这个类能够自己判断自己的出生时间一个古典问题,具体方法是声明一个类,小兔子长到第三个月后每个月又生一对兔子,谢了,假如兔子都不死,这方法能行吗,问每个月的兔子总数是多少这题目我想用python的面向对象编程编写,到时间就自己产生新的对象?最好能给出源码,有一对兔子从出生后3月起一个月生一对小兔子
提问者采纳
把所有新创建的对象(兔子)放到一个列表里,然后在一个表示时间递增的循环里修改每个对象的状态(兔子的年龄)你要是非想这么搞的话可以这样,并且判断是否要生成新的对象(兔子),新生成的对象也加入这个列表中
其他类似问题
15人觉得有用
为您推荐:
您可能关注的推广
python的相关知识
其他3条回答
不一定的,以后每个月越来越多兔子,没有准确数目
首先你的方法我觉得冗余,用函数递归就能实现k=10s=[2]def rabbit(m=1):
while m&k:
if m%3==0:
s.append(s[-1]*2)
s.append(s[-1])
return rabbit(m+1)
print sif __name__ == &#39;__main__&#39;:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁新手关于文本编辑器的问题_python吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:63,224贴子:
新手关于文本编辑器的问题收藏
如题,自学python时遇到麻烦,与文本编辑器有关。现在在测试一条新学语句时会用到python自带的交互平台,但交互平台无法测试语句块。后来才知道有文本编辑器这回事(真心新手)。而python自带的文本编辑器打字,输入非常不方便,于是下了一个叫gVim的编辑器,不过这个编辑器不能检测我的程序,只能书写(可能还是我没找到检测功能)。于是就只能用先交互平台测试新学到的句子,再用gvim写简单程序,最后用自带的文本编辑器检测程序。现在自学到了循环语句的部分,语句块不能在交互平台上测试,也不能作为一个完整程序被检测,并且经三个步骤整个过程变得十分麻烦,请问各位大侠,有什么能化简我的学习步骤的方法?python自带的编辑器真心用不了。
三叔正版授权网游公测!
sublime text可以满足你的需求,文本编辑,语法高亮,自动补齐,运行都可以不过有的功能需要插件支持
notepad++ 湾湾的货 配powershellsublime_text 也可以linux下 pycharm
vim开始不要纠结环境吧,我是这么想的
gvim是vim的GUI版本,vim本身并不带有检测功能,是非常轻量的编辑器。想让vim能检测语法,配置插件就可以了。vim可以调用外部命令执行程序,可以自己nmap快捷键一键调试脚本
在win下可以用Pythonwin,linux下可以用pythoncard自带的codeEditor。
爱就是,无论你怎么抵挡,它还是要来的东西。爱就是,无论你怎么诋毁,它还是高尚的东西。
我不太明白你说交互式解释器的无法执行语句块是什么意思?我演示了两种循环:1. while循环2. for循环两个都可以正确执行。个人觉得在你现在的这个学习阶段,自带的交互式解释器完全足够了,使用其他的工具只会增加学习成本。当然像vim这样的文本编辑器是可以支持插件或者执行外部命令的,vim在linux下可以执行 ":!python script_name" 这样的命令执行你的脚本,windows下可能还需要配置环境变量。当然windows下你也可以使用notepad++,配置一下快捷键,很简单。
我还是习惯用python自带的..
为什么我们总是不懂得珍惜眼前人?在未可预知的重逢里,我们以为总会重逢,总会有缘再会,总以为有机会说一声对不起,却从没想过每一次挥手道别,都可能是诀别,每一声叹息,都可能是人间最后的一声叹息。
你若不编译为exe,在哪里运行都可以,否则有必要用IDLE测试一遍再编译。
没有一百分的另一半,只有五十分的两个人。
&#x2282;ヽ   \\ ∧_∧   \( &#x02D8;ω&#x02D8; )     & ⌒ヽ   /   へ\   /  / \\   &#xFF9A; ノ   ヽ_つ  / /  / /| ( (ヽ | |、\ | 丿 \ ⌒) | |  ) /`ノ )  L&#xFF89;(_/路过飘过′`)   ,&#x2022;′ &#x00B8;,&#x2022;′`)  (&#x00B8;,&#x2022;′  (&#x00B8;*[NEVER SAY DIE]〃′`)      拿经验 ,&#x2022;′ &#x00B8;,&#x2022;′`)          (&#x00B8;,&#x2022;′ (&#x00B8;闪人&什么叫小尾巴&&Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0. Safari/537.36
曾经,你苦苦以为,没有了这个人,也就活不成了,到了后来,不是活得好好的吗?一个不爱你的人,决不会比你的生命重要;一个爱你的人,会告诉你,你的生命比你对他的爱情重要。
有的人认为坚持会让我们变得更强大,但有时候放手也会。
时间回不到开始的地方:对于已经错过的一些东西,或许不用再试着去挽留,错了就错了。对于得到,我们都应该充满感激,对于失去,谁能保证那本该是属于你的?有些东西原本就是让你牵挂,而不是获取的。难忘的人会忘,做过的梦成真,期待过去实现,走过的路让自己强壮,珍惜因果,顺乎自然。
现在要一份纯粹的爱情,很难。放不下骄傲,放不下身段,参杂太多人太多事,彼此撑着,最后以“爱不起”、“不适合”收场。陪我们走到最后的人,也许算不上是我们最爱的,但会是最合适的。这样也很好,不是吗?人生本不完美,也许懂得知足。年轻就是这样,有错过有遗憾,最后才会学着珍惜
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或十、Python编程解决组合问题(之二)
九、Python编程解决组合问题(之二)
四、组合问题的通用算法
到这,肯定有人会问,有没有比这好懂一些的方法呢,这也是我当初的想法,其实在python的库中,就有非常好的实现,因为python本身就有直接解决排列、组合问题的函数提供:
在列表中你可以看到一个的函数,函数的源代码如下:
如何使用?如下:
&&& import
a=('zhao','qian','sun','li','zhou','wu')
&&& for b binations(a,4): print b
('zhao', 'qian', 'sun', 'li')
('zhao', 'qian', 'sun', 'zhou')
('zhao', 'qian', 'sun', 'wu')
('zhao', 'qian', 'li', 'zhou')
('zhao', 'qian', 'li', 'wu')
('zhao', 'qian', 'zhou', 'wu')
('zhao', 'sun', 'li', 'zhou')
('zhao', 'sun', 'li', 'wu')
('zhao', 'sun', 'zhou', 'wu')
('zhao', 'li', 'zhou', 'wu')
('qian', 'sun', 'li', 'zhou')
('qian', 'sun', 'li', 'wu')
('qian', 'sun', 'zhou', 'wu')
('qian', 'li', 'zhou', 'wu')
('sun', 'li', 'zhou', 'wu')
看起来比我们实现的代码高明得多,能够解决任意序列的任意数量的组合问题;你可能会想,我们整这么多干啥?直接拿来用不就行了,其实,我们的真实目的是学习,学习就应该参考好的,提高自己;
我将这个程序进行了简单的改造:
def combinations(iterable, n):
&&& pool =
tuple(iterable)
return comb
&&& indices =
while True:
&&&&&&&&&&&
comb.append(tuple(pool[i] for i in indices))
&&&&&&&&&&&
if indices[n-1] & m-1:
&&&&&&&&&&&&&&&
indices[n-1] += 1
&&&&&&&&&&&
&&&&&&&&&&&&&&&
for i in reversed(range(n-1)):
&&&&&&&&&&&
if indices[i] != i + m - n:
&&&&&&&&&&&&&&&
indices[i] += 1
&&&&&&&&&&&&&&&
for j in range(i+1, n):
&&&&&&&&&&&&&&&&&&&
indices[j] = indices[j-1] + 1
&&&&&&&&&&&&&&&
&&&&&&&&&&&
return comb
print "\nChange from python itertools"
comb1=combinations(('zhao','qian','sun','li','zhou','wu'),4)
for e in comb1: print e
print len(comb1)
可以直接copy形成一个.py文件直接运行,运行结果:
Change from python itertools
('zhao', 'qian', 'sun', 'li')
('zhao', 'qian', 'sun', 'zhou')
('zhao', 'qian', 'sun', 'wu')
('zhao', 'qian', 'li', 'zhou')
('zhao', 'qian', 'li', 'wu')
('zhao', 'qian', 'zhou', 'wu')
('zhao', 'sun', 'li', 'zhou')
('zhao', 'sun', 'li', 'wu')
('zhao', 'sun', 'zhou', 'wu')
('zhao', 'li', 'zhou', 'wu')
('qian', 'sun', 'li', 'zhou')
('qian', 'sun', 'li', 'wu')
('qian', 'sun', 'zhou', 'wu')
('qian', 'li', 'zhou', 'wu')
('sun', 'li', 'zhou', 'wu')
程序为什么会变的这么复杂呢?
程序考虑了广泛的适用性,能够针对任何的序列来解决组合的问题,而我们上面的程序只能够使用到自然数的数列中
程序考虑了意外的情况,如果序列中有6个元素,而你要找7个元素的组合,程序不会发生意外
程序没有使用递归,所以解决的过程需要考程序流程来处理
我们还是来讲讲这个程序本身,在开始之前,先介绍一下在这个程序中新出现的一个语法:
for语句后面的else
循环可以有 else
用于循环后处理(post-processing),while 循环中的
else 处理方式相同,只要 for
循环是正常结束的(不是通过 break),else
子句就会执行
下面介绍程序的算法流程,把这个算法流程搞清楚,程序看起来就会简单很多,但是把这个算法用文字性的语言描述出来,我可真是费了九牛二虎之力:
为了使解决问题的方法具有普适性,我们在编写算法的过程中,不会直接的操作序列的每个元素,而是使用每个元素在序列中的序号来进行组合,序号从0开始,在最后形成结果时,再根据序号与序列中元素的对应关系,得到我们想要的结果,这样不管序列是多复杂的元素组成,我们都相当于在解决0~m-1这些数中n个数的组合
我们还是回到最开始的那10个步骤,我们之前讲过,对于每一步来说,就是最后的一个元素在进行循环,这具有普遍性,适用于C(m,
n),也就是说,对于从m个元素中取n个元素的组合,在确定了组合中的n-1个元素之后,剩下要做的就是进行循环,每一次的循环确定一个组合的第n个元素,形成一种组合结果。那么现在的难点在与如何程序化的确定那n-1个元素
我们再来分析一下那10个步骤,我们固定的3个数从1 2
3到最后变为3 4 5,看看每一步的变化,我们可以发现一些规律:
变化第三位开始,第&#9312;~第&#9314;,第三位从3-&5
第三位变化完之后,改变第二位,同时,第三位起始位置也+1,重复上一步
上面两步重复执行,知道第二位变为4,再按照类似的步骤,对第一位进行变化,再重复以上两步
从上面的描述,最需要我们明白的一点是:除了最后一个数,其他的数只要一变化,这个数后面的数都要重新排序,再进行循环操作。
程序说明:
line1:函数定义,传入的参数1是序列,该序列可以是一个list或者tuple或者字符窜,参数2是组合中元素的数量
line2:将传入的参数强制转为tuple,如果是字符窜,如’ABCDEF’,在执行后,pool将等于('A',
'B', 'C', 'D', 'E', 'F')
line3:局部变量,初始化为空list,用来存储结果,并在最后作为返回值
line4:计算序列中元素的数量,保存在变量m中
line5-6:例外情况判断,如果要求组合的数量r&序列中元素的数量,直接返回空list
line7:中间变量,在前面的算法流程中讲过,组合的中间结果是用序号来表示的,这个list变量就是这个用途,而且初始化值是第一个组合的序号,如果是从m个元素中取4个的组合,那它的值就为[0,
line8:这个大的while循环,没执行一次循环,代表的就是我们最开始描述10步中的一步
line9-14:这是一个小循环,目的就是在固定了n-1个数之后,对最后一个数进行循环,并输出结果
line10:这一句从语法上讲最复杂,但从作用上看最简单,我们之前说过,组合的中间结果是元素的序号,为了得到真正的组合结果,还需要根据对应关系,进行一次转换,这就是本句的作用。看看句子本身,append的参数里包含了一个循环,很神奇,这也是python的神奇语法
line11-14:这是循环的是结束还是继续的判断语句,我们知道,最后一个数必须循环到为n-1为止(注意,这里所述的数为序号,序号是从0开始的),所以如果最后一个数比n-1小,就+1继续循环,否则,循环终止
line15-20:这是本程序最难懂的关键点,我们一句一句的说明
line15:for循环语句,我们在算法描述中说了,在最后一个序号循环结束之后,剩余的序号变化是从后往前的,所以我们使用reversed对range产生的list进行了倒转,而且由于这个循环的序号变化,只是针对前面的n-1个,所以range的范围是n-1
line16:判断语句,从最开始的例子,我们知道,对于6取4,固定的3个数从1
2 3变化为3 4
5之后,循环会终止,这条语句的目的就是从后往前,逐个的判断,条件是否满足,如果第三位变成了5,那就再循环,判断第二位,依次执行;
line17-20:对于line16的判断,假设第二位现在是3,就会执行17-20的语句,line17将第二位+1,line18-19的语句将第二位后面的重新排序,排序之后,line20的break语句跳出这个循环,继续line8的大循环
line21:如果line15-20的循环正常完成(正常完成指的是没有经过break语句跳出),说明1
2 3已经变为了3 4 5,那么程序就可以结束了
用文字来描述这个过程,对我来说是非常有难度的挑战,但从个人的学习经历来看,网上可以找到很多的程序源代码,但是对于初学者,由于这些程序都没有一些详细的描述,所以看起来都比较的困难,所以我还是尝试把我理解的描述清楚,便于像我这样的初学者入门,否则很容易遇难而退。
我再说说我的一些体会,也希望可以对大家有搜帮助:
写程序的目的是解决实际的问题,但是程序也有基本的语法和一些基本的技巧,这些都需要从写一些小的应用程序着手,来积累自己的基础知识,想一下子成为高手,这也没有捷径。
解决某个实际的问题,程序的写法其实有很多种,就想我们在上面看到的组合问题,有很多种写法,其实针对只有一个问题,我们可以相处很多的问题来训练自己,比如:
我们能否将递归方法,也改为一个通用的程序,可以针对任意的序列来解决组合问题?
我们更改一下程序,让组合的产生顺序发生变化
其实,对一个问题的举一反三,就能够将python的基本语法掌握扎实了。
我的更多文章:
( 22:57:35)( 22:18:28)( 22:15:46)( 22:10:41)( 23:31:49)( 23:32:54)( 23:09:39)( 23:09:10)( 16:53:58)( 19:26:01)
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。编程这件小事牵扯到太多的知识,很容易知其然而不知其所以然,但真正了不起的程序员对自己程序的每一个字节都了如指掌,要立足基础理论,努力提升自我的专业修养。
[41,015] [13,047] [12,875] [10,138] [9,678] [7,211] [6,643] [6,147] [6,030] [6,003] [5,443] [5,434] [5,389] [5,294] [5,276]
友情链接(随机排序)

我要回帖

更多关于 python编写登录脚本 的文章

 

随机推荐