我是python的新手,仍然学习绳索??,但是我希望有更多经验的人可以帮助我.

我正在尝试编写以下Python脚本:

>创造四个点

>创建四个矩形

>检查每个点是否在任何矩形中,然后将结果写到输出文件中.

问题涉及两个数据结构Point和Rectangle类.我已经开始创建Point类和Rectangle类.矩形类应包含通过随机模块的random方法创建的相关数据集.从我的尝试中可以看出,我到处都是,但是我已经使用#comments来尝试去做.

我的具体问题是:

1)如何使该脚本正常工作?

2)我缺少哪些变量或函数来生成随机矩形,并查看这些矩形中是否有特定点?

## 1. Declare the Point class

class Point:

def __init__(self,x = 0.0, y = 0.0):

self.x = x

self.y = y

pass

## 2. Declare the Rectangle class

class Rectangle:

def __int__(self): ## A rectangle can be determined aby (minX, maxX) (minY, maxY)

self.minX = self.minY = 0.0

self.maxX = self.maxY = 1.0

def contains(self, point): ## add code to check if a point is within a rectangle

"""Return true if a point is inside the rectangle."""

# Determine if a point is inside a given polygon or not

# Polygon is a list of (x,y) pairs. This function

# returns True or False.

def point_in_poly(x,y,poly):

n = len(poly)

inside = False

p1x,p1y = poly[0]

for i in range(n+1):

p2x,p2y = poly[i % n]

if y > min(p1y,p2y):

if y <= max(p1y,p2y):

if x <= max(p1x,p2x):

if p1y != p2y:

xints = (y-p1y)*(p2x-p1x)/(p2y-p1y)+p1x

if p1x == p2x or x <= xints:

inside = not inside

p1x,p1y = p2x,p2y

return inside

## 3. Generate four points

##define a Point list to keep four points

points = []

##add codes to generate four points and append to the points list

polygon = [(0,10),(10,10),(10,0),(0,0)]

point_x = 5

point_y = 5

## 4. Generate four rectangles

##define a Rectangle list

rects = []

for i in range(4):

rectangle = Rectangle()

## Generate x

x1 = random.random()

x2 = random.random()

## make sure minX != maxX

while(x1 == x2):

x1 = random.random()

if x1

rectangle.minX=x1

rectangle.maxX=x2

elif x1>x2:

rectangle.minX=x2

rectangle.maxX=x1

rects.append(rectangle)

## Develop codes to generate y values below

## make sure minY != maxY

while(y1 == y2):

y1 = random.random()

if y1

rectangle.minY=y1

rectangle.maxY=y2

elif y1>y2:

recetangle.minY=y2

racetangle.maxY=y1

## add to the list

rects.append(rectangle)

## 5. Add code to check which point is in which rectangle

resultList = [] ## And use a list to keep the results

for i in range(4):

for j in range(4):

if points[i] in rectangle[j]:

print i

# write the results to file

f=open('Code5_4_1_Results.txt','w')

for result in resultList:

f.write(result+'

')

f.close()

python判断点在矩形内_Python测试点是否在矩形中相关推荐

  1. python判断点在四边形内

    只针对凸四边形: 如果是三角形,五边形呢?这个代码是否有效,还没测 import globclass Point():def __init__(self, x,y):self.x=xself.y=yd ...

  2. python判断变量是否为数字_Python 判断字符串是否为数字

    Python 判断字符串是否为数字 以下实例通过创建自定义函数 is_number() 方法来判断字符串是否为数字: # -*- coding: UTF-8 -*- # Filename : test ...

  3. python判断字符串是纯数字_python判断字符串是否纯数字的方法

    本文实例讲述了python判断字符串是否纯数字的方法.分享给大家供大家参考.具体如下: 判断的代码如下,通过异常判断不能区分前面带正负号的区别,正则表达式可以根据自己需要比较灵活的写,通过isdigi ...

  4. python 判断字符串是否为数字_Python核心知识系列:数字与字符串类型

    ​学习任何一种编程语言时首先要对它的数据类型有所了解,从本篇开始会对 Python 中的常见数据类型的基本概念和操作进行介绍. Python中有6种标准的数据类型:数字(Number).字符串(Str ...

  5. python 判断是否有某个属性_python如何判断对象的某个属性

    在python判断某个对象是否具有某属性可以使用以下方法 方法一:通过异常捕捉来实现逻辑class FooClass: pass k = FooClass() try: #do some thing  ...

  6. python判断字符串包含某个字符_python判断字符串是否包含另一个字符串

    Python判断一个字符串是否包含子串的方法有很多,下面介绍几种方法. 1.使用成员操作符 in>>> s='nihao,shijie' >>> t='nihao' ...

  7. python判断质数合数奇数偶数_Python 判断合数质数

    Python 判断合数质数 首先明确合数和质数的概念 合数: 自然数中除了能被 1 和本身整除之外, 还能被其他的数整除的数(4,6,9,10...)defheshu(m): list_a=[] fo ...

  8. python判断输入的是空白_python判断是空的实例分享

    在实际的工作当中,我们难免要与空值打交道,相信不少初学者都会写出下面的代码: if a is None: do something.else: do the other thing. 这样写看起来不错 ...

  9. python判断语句的复杂度_Python内置方法的时间复杂度(转)

    本文翻译自Python Wiki 本文基于GPL v2协议,转载请保留此协议. 本页面涵盖了Python中若干方法的时间复杂度(或者叫"大欧","Big O") ...

最新文章

  1. anaconda 运行路径
  2. Teams Developer Portal介绍
  3. Eclipse报错 due to restriction on required library C:/Java/jdk1.6.0_10/jre/lib/rt.jar 解决方案
  4. BZOJ.1029.[JSOI2007]建筑抢修(贪心)
  5. 王秋杨的“前世”和她的“在路上”
  6. kafka笔记——入门介绍
  7. 约瑟夫环(C语言实现)
  8. 搜狗双拼输入法--快速入门
  9. Android Native报错定位(addr2line工具的使用)
  10. 计算机管理里面删打印机就卡住了,打印机任务无法删除怎么办-解决打印机任务无法删除的方法 - 河东软件园...
  11. 【Unity2D好项目分享】提高游戏人物打击感
  12. 记升级springboot1.X 到springboot2.3.5踩的坑
  13. php yar 安装失败_CentOS搭建Yar框架以及遇到的坑!
  14. HTML 字体图标的引入
  15. 爬虫07 爬取阿里旅行特价机票
  16. 计算机word知识试题及答案,全国计算机等级考试Word试题及答案(2)
  17. 女生学计算机视力,[健康科普]女孩每天面对电脑,近视手术后视力恢复至1.0
  18. 机器人彩铅画_高达机器人铅笔画图片
  19. android studio manifest merger failed,android studio 引用第三方工程Manifest merger failed
  20. Java多线程 - Runnable接口和Callable接口的区别

热门文章

  1. LeetCode-数组-54. 螺旋矩阵
  2. LeetCode-剑指 Offer 10- II. 青蛙跳台阶问题
  3. numpy.absolute详解
  4. tomcat架构分析(valve源码导读)【转】
  5. Docker源码分析(十):Docker镜像下载
  6. 分库分表需要考虑的问题及方案
  7. 从实际案例聊聊Java应用的GC优化--转
  8. Nginx vs Apache--reference
  9. Python数据结构与算法(第六天)
  10. linux下top命令讲解