Python 程序的输出 | 第十六套

简介: Python 程序的输出 | 第十六套
  • 难度级别: 简单

1)  以下程序的输出是什么?

python

复制代码

import threading
barrier = threading.Barrier(4)
class thread(threading.Thread):
  def __init__(self, thread_ID, thread_name):
    threading.Thread.__init__(self)
    self.thread_ID = thread_ID
    self.thread_name = thread_name
  def run(self):
    print("ThreadID = " + str(self.thread_ID) + ", ThreadName = " +
self.thread_name + "\n")
    try:
      barrier = threading.Barrier(4)
      barrier.wait()
    except:
      print("barrier broken")
thread1 = thread(100, "HY")
thread2 = thread(101, "Hai")
thread3 = thread(102, "Haiyong")
thread1.start()
thread2.start()
thread3.start()
barrier.wait()
print("Exit")

a) ThreadID = 100, ThreadName = HY

ThreadID = 101, ThreadName = Hai

ThreadID = 102, ThreadName = Haiyong

b) ThreadID = 100, ThreadName = HY

ThreadID = 101, ThreadName = Hai

ThreadID = 102, ThreadName = Haiyong

Exit

c) 编译错误

d) 运行时错误

答:a)

解释: 这是一个死锁的例子。每个线程创建自己的屏障并在该屏障上调用 .wait() 函数。

2)  以下哪一项不是以下程序的输出?

import threading
class thread(threading.Thread):
  def __init__(self, thread_ID, thread_name):
    threading.Thread.__init__(self)
    self.thread_ID = thread_ID
    self.thread_name = thread_name
  def run(self):
    print(self.thread_name)
thread1 = thread(100, "HY")
thread2 = thread(101, "Hai")
thread3 = thread(102, "Haiyong")
thread1.start()
thread2.start()
thread3.start()
print("Exit")

a) HY Hai Haiyong 退出

b) 退出 Hai Haiyong HY

c) HY 退出 Haiyong Hai

d) 以上都不是

答:(d)

说明: 在线程上调用 start() 方法会将线程移动到就绪状态。线程调度器负责调度线程。因此,可以随时安排特定线程。

3)  以下程序的输出是什么?

import threading
class thread(threading.Thread):
  def __init__(self, thread_ID, thread_name):
    threading.Thread.__init__(self)
    self.thread_ID = thread_ID
    self.thread_name = thread_name
  def run(self):
    print(self.thread_name)
thread1 = thread(100, "HY")
thread2 = thread(101, "Hai")
thread3 = thread(102, "Haiyong ")
thread = []
thread.append(thread1)
thread.append(thread2)
thread.append(thread3)
thread1.start()
thread2.start()
for thread in thread:
  thread.join()
thread3.start()
print("Exit")

答。 (C)

说明: 无法在尚未开始执行的线程上调用 join() 方法。

4)以下程序的输出是什么?

import threading
i = 5
class thread(threading.Thread):
  def __init__(self, thread_ID, thread_name):
    threading.Thread.__init__(self)
    self.thread_ID = thread_ID
    self.thread_name = thread_name
  def run(self):
    i = i + 1
    print(i)
thread1 = thread(100, "HY")
thread2 = thread(101, "Hai")
thread1.start()
thread2.start()

a) 66

b) 67

c) 编译错误

d) 运行时错误

答: (d)

说明: 每个线程都有自己的内存保留空间。因此,对于每个线程,thread1 和 thread2,变量 temp 未声明,因为 temp 未在线程的 run 方法中定义。

5)  以下程序的输出是什么?

import threading
class thread(threading.Thread):
  def __init__(self, thread_ID):
    self.thread_ID = thread_ID
  def run(self):
    print(self.thread_ID)
thread1 = thread(100)
thread1.start()

a) 100

b) 编译错误

c) 运行时错误

d) 这些都不是

答:(C)

说明:  thread.__init__() 必须由在 __init__ 函数中创建的每个线程显式调用。

目录
相关文章
|
1天前
|
算法 测试技术 开发者
在Python开发中,性能优化和代码审查至关重要。性能优化通过改进代码结构和算法提高程序运行速度,减少资源消耗
在Python开发中,性能优化和代码审查至关重要。性能优化通过改进代码结构和算法提高程序运行速度,减少资源消耗;代码审查通过检查源代码发现潜在问题,提高代码质量和团队协作效率。本文介绍了一些实用的技巧和工具,帮助开发者提升开发效率。
6 3
|
4天前
|
存储 人工智能 数据挖掘
Python编程入门:构建你的第一个程序
【10月更文挑战第22天】编程,这个听起来高深莫测的词汇,实际上就像搭积木一样简单有趣。本文将带你走进Python的世界,用最浅显的语言和实例,让你轻松掌握编写第一个Python程序的方法。无论你是编程新手还是希望了解Python的爱好者,这篇文章都将是你的理想起点。让我们一起开始这段奇妙的编程之旅吧!
13 3
|
20天前
|
IDE 开发工具 Python
Python 编程入门:打造你的第一个程序
【10月更文挑战第6天】编程,这个听起来高大上又充满神秘感的领域,其实就像学习骑自行车一样。一开始你可能会觉得难以掌握平衡,但一旦你学会了,就能自由地穿梭在广阔的道路上。本文将带你走进 Python 的世界,用最简单的方式让你体验编写代码的乐趣。不需要复杂的理论,我们将通过一个简单的例子——制作一个猜数字游戏,来实践学习。准备好了吗?让我们开始吧!
|
23天前
|
存储 JSON 安全
面向企业应用程序的 Python 配置管理
面向企业应用程序的 Python 配置管理
25 9
|
23天前
|
人工智能 数据挖掘 程序员
Python 编程入门:打造你的第一个程序
【10月更文挑战第3天】编程,这个看似高深莫测的技能,实际上就像学骑自行车一样,一旦掌握,便能开启全新的世界。本文将带领初学者步入Python编程的殿堂,从基础语法到编写实用程序,一步步解锁编程的乐趣。
|
26天前
|
Python
Python编程---双色球选购程序
Python编程---双色球选购程序
20 1
|
18天前
|
存储 开发者 Python
Python编程入门:构建你的第一个程序
【10月更文挑战第8天】本文旨在为初学者提供一个简单的Python编程入门指南。我们将从安装Python环境开始,逐步介绍如何编写、运行和理解一个简单的Python程序。文章将通过一个实际的代码示例来展示Python的基本语法和结构,帮助读者快速上手Python编程。
|
18天前
|
存储 程序员 Python
Python编程入门:打造你的第一个程序
【10月更文挑战第8天】在数字时代的浪潮中,编程已成为一项基础技能。本文旨在引导初学者步入编程世界,通过Python语言的简洁与强大,轻松打造个人的第一个程序。我们将一起探索变量、数据类型、控制结构等概念,并通过实际代码示例,解锁编程的乐趣。无论你是编程新手还是希望了解Python的爱好者,这篇文章都将是你的理想起点。让我们开始吧,用代码书写你的数字梦想!
|
19天前
|
Java Python
如何通过Java程序调用python脚本
如何通过Java程序调用python脚本
13 0
|
27天前
|
安全 网络协议 IDE
使用Python编写网络扫描程序
使用Python编写网络扫描程序
33 0