A. python实验求解,急!
第1题
第一空填 True
第二空填 break
第三空填 except Exception as e:pass
while True:
x=input()
try:
x=int(x)
if x>0: break
except Exception as e:pass
print(f"{x:3d}")
源代码(注意源代码的缩进)
B. 上机实践6 组件及事件处理 实验 组件及事件处理(一) 1实验目的 学习处理ActionEvent事件。 2实验内容 编
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Teacher {
int numberOne,numberTwo;
String operator="";
boolean right;
public int giveNumberOne(int n){
numberOne=(int)(Math.random()*n)+1;
return numberOne;
}
public int giveNumberTwo(int n){
numberTwo=(int)(Math.random()*n)+1;
return numberTwo;
}
public String giveOperator(){
double d=Math.random();
if(d>=0.8)
operator="+";
else if(d<0.8&&d>0.5)
operator="-";
else if(d<=0.5&&d>0.2)
operator="*";
else if(d<=0.2)
operator="/";
return operator;
}
public boolean getRight(int answer){
if(operator.equals("+")){
if(answer==numberOne+numberTwo)
right=true;
else
right=false;
}
else if(operator.equals("-")){
if(answer==numberOne-numberTwo)
right=true;
else
right=false;
}
else if(operator.equals("*")){
if(answer==numberOne*numberTwo)
right=true;
else
right=false;
}
else if(operator.equals("/")){
if(answer==numberOne/numberTwo)
right=true;
else
right=false;
}
return right;
}
}
public class ComputerJFrame extends JFrame implements ActionListener{
TextField textOne,textTwo,textResult;
Button getProblem,giveAnswer;
Label operatorLabel,message;
Teacher teacher;
ComputerJFrame(String s){
super(s);
teacher = new Teacher();
setLayout(new FlowLayout());
textOne = new TextField(10);
textTwo = new TextField(10);
textResult = new TextField(10);
operatorLabel = new Label("+");
message = new Label("你还没有回答呢");
getProblem = new Button("获取题目");
giveAnswer = new Button("确认答案");
add(getProblem);
add(textOne);
add(operatorLabel);
add(textTwo);
add(new Label("="));
add(textResult);
add(giveAnswer);
add(message);
textResult.requestFocus();
textOne.setEditable(false);//该方法设置文本框的可编辑性
textTwo.setEditable(false);
getProblem.addActionListener(this);//创建监视器
giveAnswer.addActionListener(this);
textResult.addActionListener(this);
setBounds(100,100,450,100);//设置出现屏幕上时的初始位置
setLocationRelativeTo(null);//居中
setVisible(true);//窗口的可见性
validate();
addWindowFocusListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
}
);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==getProblem){
int number1 = teacher.giveNumberOne(100);
int number2 = teacher.giveNumberTwo(100);
String operator = teacher.giveOperator();
textOne.setText(""+number1);//设置文本框中为参数字符串指定的文本
textTwo.setText(""+number2);
operatorLabel.setText(operator);
message.setText("请回答");
textResult.setText(null);
}
if(e.getSource()==giveAnswer){
String answer = textResult.getText();
try{ int result = Integer.parseInt(answer);
if(teacher.getRight(result)==true){
message.setText("你回答正确");
}
else{
message.setText("你回答错误");
}
}
catch(NumberFormatException ex){
message.setText("请输入数字字符");
}
}
textResult.requestFocus();
validate();
}
}
public class MainClass {
public static void main(String[] args) {
ComputerJFrame frame;
frame = new ComputerJFrame("算术测试");
}
}
C. python程序设计实验怎么做做了一天了
import random
def rand6():
return int(random.random()*6) + 1
def gamble(n):
roll = [rand6(), rand6(), rand6()]
bingo = roll.count(n)
if bingo ==0 :
return -1
else:
return bingo
n = 100000
money = 10000
for i in range(n):
money += gamble(rand6())
print(f'money left: {money}')
D. Python实验操作题,急急急
(1)with as f
(2)with as f i in range(10) f.write(str(i))
2.以追加的方式打开E:\aa.txt文件,任意写入文字,以“end”作为结束标志。
with open(r'E:\aa.txt', 'a') as f:
for i in range(10):
f.write('任意字符')
3. 打开e:\aa.txt文件,并把该文件的内容复制到e:\bb.txt文件中去。
with open(r'e:\aa.txt') as f:
content = f.read()
with open(r'e:\bb.txt', 'a') as f:
f.write(content)
E. PYQT设计完成,如何用python检测事件
答: 可以将事件连接到槽函数,然后在槽函数里面设置相关内容。这样的话每次事件触发时,槽函数里面的内容就可以执行,根据内容也就可以判断知道哪个事件被触发了。信号绑定槽函数的方法有如下所示。
就比如说你要捕获按钮的点击事件(clicked),当按钮(定义为btn)被点击后,我们调用一个on_click函数(这是我们自己定义的),那么最后的代码就是这样btn.clicked.connect(on_click),就可以把按钮的点击事件与槽函数相连。
F. Python中什么是事件
#encoding:UTF-8
#系统模块
fromQueueimportQueue,Empty
fromthreadingimport*
########################################################################
classEventManager:
#----------------------------------------------------------------------
def__init__(self):
"""初始化事件管理器"""
#事件对象列表
self.__eventQueue=Queue()
#事件管理器开关
self.__active=False
#事件处理线程
self.__thread=Thread(target=self.__Run)
#这里的__handlers是一个字典,用来保存对应的事件的响应函数
#其中每个键对应的值是一个列表,列表中保存了对该事件监听的响应函数,一对多
self.__handlers={}
#----------------------------------------------------------------------
def__Run(self):
"""引擎运行"""
whileself.__active==True:
try:
#获取事件的阻塞时间设为1秒
event=self.__eventQueue.get(block=True,timeout=1)
self.__EventProcess(event)
exceptEmpty:
pass
#----------------------------------------------------------------------
def__EventProcess(self,event):
"""处理事件"""
#检查是否存在对该事件进行监听的处理函数
ifevent.type_inself.__handlers:
#若存在,则按顺序将事件传递给处理函数执行
forhandlerinself.__handlers[event.type_]:
handler(event)
#----------------------------------------------------------------------
defStart(self):
"""启动"""
#将事件管理器设为启动
self.__active=True
#启动事件处理线程
self.__thread.start()
#----------------------------------------------------------------------
defStop(self):
"""停止"""
#将事件管理器设为停止
self.__active=False
#等待事件处理线程退出
self.__thread.join()
#----------------------------------------------------------------------
defAddEventListener(self,type_,handler):
"""绑定事件和监听器处理函数"""
#尝试获取该事件类型对应的处理函数列表,若无则创建
try:
handlerList=self.__handlers[type_]
exceptKeyError:
handlerList=[]
self.__handlers[type_]=handlerList
#若要注册的处理器不在该事件的处理器列表中,则注册该事件
ifhandlernotinhandlerList:
handlerList.append(handler)
#----------------------------------------------------------------------
defRemoveEventListener(self,type_,handler):
"""移除监听器的处理函数"""
#读者自己试着实现
#----------------------------------------------------------------------
defSendEvent(self,event):
"""发送事件,向事件队列中存入事件"""
self.__eventQueue.put(event)
########################################################################
"""事件对象"""
classEvent:
def__init__(self,type_=None):
self.type_=type_#事件类型
self.dict={}#字典用于保存具体的事件数据
测试代码
#encoding:UTF-8
importsys
fromdatetimeimportdatetime
fromthreadingimport*
fromEventManagerimport*
#事件名称新文章
EVENT_ARTICAL="Event_Artical"
#事件源公众号
classPublicAccounts:
def__init__(self,eventManager):
self.__eventManager=eventManager
defWriteNewArtical(self):
#事件对象,写了新文章
event=Event(type_=EVENT_ARTICAL)
event.dict["artical"]=u'如何写出更优雅的代码 '
#发送事件
self.__eventManager.SendEvent(event)
printu'公众号发送新文章 '
#监听器订阅者
classListener:
def__init__(self,username):
self.__username=username
#监听器的处理函数读文章
defReadArtical(self,event):
print(u'%s收到新文章'%self.__username)
print(u'正在阅读新文章内容:%s'%event.dict["artical"])
"""测试函数"""
#--------------------------------------------------------------------
deftest():
listner1=Listener("thinkroom")#订阅者1
listner2=Listener("steve")#订阅者2
eventManager=EventManager()
#绑定事件和监听器响应函数(新文章)
eventManager.AddEventListener(EVENT_ARTICAL,listner1.ReadArtical)
eventManager.AddEventListener(EVENT_ARTICAL,listner2.ReadArtical)
eventManager.Start()
publicAcc=PublicAccounts(eventManager)
timer=Timer(2,publicAcc.WriteNewArtical)
timer.start()
if__name__=='__main__':
test()
G. Python 如何编出一个 “验证答案” 程序
haodehahah
请采纳。。。。
H. python事件可视化跟踪执行
step by step这种跟踪是可以实现的。几乎每个PYTHON的IDLE都可以实现。
另外一个是你自己建立运行态的状态跟踪,然后再可视化处理。这里涉及到状态保存,日志消息队列,以及实时同步,GUI界面的事件处理等等,难度略略有些高。想做好不容易,但是做出来不难。可以直接借助python的logginge模块,改一改就可以。
最后一种,python大部分情况下单元测试做测试驱动。调试用print。这是大多数情况下做的。比以上两种都方便,都要快,也是python脚本语言本身决定的。它是小而快的,不是重而全。
I. 一道Python实验题,求大神帮帮忙,在线等,挺急的,谢谢了。
代码如下:
import sys
hit_except = False
try:
f = open('123.txt')
while True:
line = f.readline()
print(line,end='')
if not line:
break
except:
hit_except = True
print(f"异常:{sys.exc_info()[0]}")
else:
pass
finally:
if not hit_except:
f.close()
J. 使用python来写脚本,如何来处理验证码的问题,每次登录时验证码都不同,求高人帮忙,谢谢
如果是想让代码识别的话,要看验证码的复杂程度了,如果比较简单,使用图像处理说不定可以解决(我不会,不过网上应该有资料,就算没有python的,其他语言的也有),但是如果是复杂的,建议你把验证码下载下来,如果有图形界面,就在界面中显示,如果没有,就下到一个目录里,自己取找,然后人工识别吧。