python函数画圆形,Python画圆函数

Python内置turtle海龟库函数讲解1

1、返回原点

桦南网站建设公司创新互联,桦南网站设计制作,有大型网站制作公司丰富经验。已为桦南数千家提供企业网站建设服务。企业网站搭建\成都外贸网站建设要多少钱,请找那个售后服务好的桦南做网站的公司定做!

home()

无参数,直接调用

2、画圆

circle(radius,extent,steps)

参数:radius 指定圆的半径,extent 绘制圆弧的夹角,steps 多边形变数不给默认值

3、画点

dot(size,color)

参数:size绘制点的直径值,color点的色彩

4、印章

stamp()

无参数

5、清除印章

clearstamp(stampid)清楚印章

clearstamps(n=None) 清楚多个印章

参数:stampid是调用stamp函数返回的ID值,n为None则删除全部印章,如果n0则删除前n个印章,n

python怎么调用函数画五环?

import turtle

turtle.showturtle() #屏幕上显示出来海龟绘图,终端中会用到

turtle.penup() #抬起画笔,此时画笔的移动不会留下痕迹

turtle.pendown() #放下画笔,此时画笔的移动会留下痕迹

turtle.pensize(3) #笔粗为3

turtle.goto(-200,100) #将画笔移动到(-200,100)坐标

turtle.color("red") #设定画笔的颜色为红色

turtle.circle(100) #以当前画笔所在点为圆最下端开始画半径为100的圆

turtle.circle(100,steps=n) #绘制一个周长为100,的n边形

turtle.forward(200) #将画笔前进200

turtle.backward(100) #将比后退100

turtle.right(70) #将画笔箭头的方向向右移70度

turtle.left(90) #将画笔箭头的方向向左移90度

turtle.stamp() #复制当前图形

turtle.write("hello,小朋友",font=('宋体',20,"normal")) #添加括号里的字符,font设置字符字体,大小以及作用

turtle.reste() #重置

turtle.hideturtle() #将画笔隐藏

turtle.done() #把所绘图显示出来,不关闭绘图软件

给绘制的图形填充颜色

turtle.begin_fill()

turtle.circle(100)

turtle.color("yellow")

turtle.end_fill()

1

2

3

4

例:画出奥运五环

import turtle

turtle.color("blue")

turtle.circle(100)

turtle.penup()

turtle.goto(-200,0)

turtle.pendown()

turtle.color("red")

turtle.circle(100)

turtle.penup()

turtle.goto(200,0)

turtle.color("yellow")

turtle.pendown()

turtle.circle(100)

turtle.penup()

turtle.goto(-100,-100)

turtle.color("black")

turtle.pendown()

turtle.circle(100)

turtle.penup()

turtle.goto(100,-100)

turtle.color("black")

turtle.pendown()

turtle.circle(100)

turtle.done()

用python画一个圆

###################################

# coding=utf-8

# !/usr/bin/env python

# __author__ = 'pipi'

# ctime 2014.10.11

# 绘制椭圆和圆形

###################################

from matplotlib.patches import Ellipse, Circle

import matplotlib.pyplot as plt

fig = plt.figure()

ax = fig.add_subplot(111)

ell1 = Ellipse(xy = (0.0, 0.0), width = 4, height = 8, angle = 30.0, facecolor= 'yellow', alpha=0.3)

cir1 = Circle(xy = (0.0, 0.0), radius=2, alpha=0.5)

ax.add_patch(ell1)

ax.add_patch(cir1)

x, y = 0, 0

ax.plot(x, y, 'ro')

plt.axis('scaled')

# ax.set_xlim(-4, 4)

# ax.set_ylim(-4, 4)

plt.axis('equal') #changes limits of x or y axis so that equal increments of x and y have the same length

plt.show()

你可以试试,谢谢。

python编写圆的面积的程序

根据圆的面积公式和周长公式,导入math库获得Π的值(math.pi),利用input函数获得圆的半径值,编写计算公式,利用format()函数指定字符串格式输出含两位小数的圆的面积和周长。代码如下:

主要含义:

将程序设计和数学巧妙地结合起来,从简单的项目开始,应用Python解决高中和大学低年级的数学问题,比如几何、概率、统计以及微积分等,为进一步学习更复杂的数学内容以及Python编程语言打下坚实的基础。

本书也可作为Python初学者的入门读物,通过学习书中的示例程序和完成那些编程挑战,读者可以提高自己的编程能力和技巧。

Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言。

python 用eval(input)画这样四个圆 提示用户输入半径

python有两种编程方式,交互式和文件式。

交互式:对每个输入语句即时运行结果------适合语法练习

文件式:批量执行一组语句并运行结果------编程的主要方式

实例1:圆面积的计算(根据半径r计算圆面积)

上图明显是交互式运行的结果,如果想编辑文件式运行,则先编辑一个calcircle.py文件,将上述代码写进去。

然后输入代码 python calcircle.py,命令界面即可输出代码结果。

下面我们试试绘制多个同心圆的代码:

1 import turtle 2 turtle.pensize(2) 3 turtle.circle(10) 4 turtle.circle(40) 5 turtle.circle(80) 6 turtle.circle(160) 7 turtle.done()

运行结果,如下图所示

下面我们稍微分析一下这段代码

import turtle#导入海龟库 turtle.pensize(2)#设置画笔的大小 turtle.circle(10)#画圆,半径为正(负),表示圆心在画笔的左边(右边)画圆 turtle.circle(40) turtle.circle(80) turtle.circle(160) turtle.done()#必须是乌龟图形程序中的最后一个语句

关于turtle库的使用,之后还会提及,turtle库是python的自带库,绘制图像相对来说比较方便,容易理解

当然上述的代码也可以这样写

1 from turtle import * 2 pensize(2) 3 circle(10) 4 circle(40) 5 circle(80) 6 circle(160) 7 done()

大家很容易发现他们的不同,就是第一句的区别,关于import的用法也将在后续章节详细讲述。

下面我们来画一个难一点的图形

from turtle import * color('red','black')#前一个颜色是线条色,后一个是填充色 begin_fill()#从这里开始填充 for i in range(5):#画五笔就可以结束 fd(200) rt(144)#向右旋转144度 end_fill()#结束填充 done()

下面我们从一个简单的小程序来分析python的语法体系

我们大家都知道,华氏温度和摄氏温度之间的转换,我们可以用python编程实现

TempStr = input("请输入带有符号的温度值: ")#input显示的内容出现在屏幕上,且返回一个str类型的字符串 if TempStr[-1] in ['F', 'f']:#如果最后一个字符是F C = (eval(TempStr[0:-1]) - 32)/1.8#eval将字符串转换成数字 print("转换后的温度是{:.2f}C".format(C))#格式化输出 elif TempStr[-1] in ['C', 'c']: F = 1.8*eval(TempStr[0:-1]) + 32 print("转换后的温度是{:.2f}F".format(F)) else: print("输入格式错误")

缩进:缩进表达程序的格式框架

1、严格明确:缩进是语法的一部分,缩进不正确程序运行错误

2、所属关系:表达代码间包含层次关系的唯一手段

3、长度一致:使用TAB键即可

python编程语言有一个重要的特点就是取消了{ }而用缩进的方式进行代码块的分割,初学者可能不习惯,多写几次就习惯了这种写法。

注释:不被程序执行的辅助性说明信息

单行注释:

#这是单行注释

多行注释:

1 '''  这是多行注释 2 3 23333333333333 '''

变量:程序中用于保存和表示数据的占位符号

变量采用标识符(名字)来表示,关联标识符的过程叫命名

TempStr是变量名字

可以使用等号(=)向变量赋值或修改值,=被称为赋值符

TempStr="82F" #向变量TempStr赋值"82F"

命名规则:大小写字母、数字、下划线和汉字等字符

如:TempStr、Python_Great

注意事项:大小写敏感、首字符不能是数字、不与保留字相同

python与Python是不同的变量,123Python是不合法变量

保留字

被编程语言内部定义并保留使用的标识符

python语言有33个保留字(也叫关键字)

if,elif,else,in

保留字是编程语言的基本单词,大小写敏感

if是保留字,If是变量

保留字

数据类型

字符串、整数、浮点数、列表

10011101该如何解释呢?

这是一个二进制数字或十进制数字

作为二进制数字,10011101的值是十进制157

这是一段文本或者用逗号分隔3个数字

作为一段文本,逗号是文本中的一部分,一共包含10个字符

整数类型10011101

字符串类型:"10,011,101"

列表类型:[10,011,101]

字符串:由0个或多个字符组成的有序字符序列

由一对双引号或一对单引号表示

"helloworld"或'GOOD'

字符串是字符的有序序列,可以对其中字符进行索引

如"你"是"你好啊"这个字符串的第0个字符

python的字符串序号,正向递增,反向递减

字符串的使用

使用[ ]获取字符串中一个或多个字符

1 TempStr = input("请输入带有符号的温度值: ") 2 if TempStr[-1] in ['F', 'f']:#TempStr[-1]指的是最后一个字符 3 C = (eval(TempStr[0:-1]) - 32)/1.8#TempStr[0:-1]指的是字符串从第一个到最后一个之前的所有字符串 4 print("转换后的温度是{:.2f}C".format(C)) 5 elif TempStr[-1] in ['C', 'c']: 6 F = 1.8*eval(TempStr[0:-1]) + 32 7 print("转换后的温度是{:.2f}F".format(F)) 8 else: 9 print("输入格式错误")

数字类型:整数和浮点数

整数:数学中的整数

32或-89

浮点数:数学中的实数,带有小数部分

1.8或者-1.8或者-1.0

列表类型:由0个或多个数据组成的有序序列

列表使用[ ]表示,采用逗号分隔各元素

[ 'F' , 'f' ]表示列表里含义两个元素'F'和'f'

使用保留字in判断一个元素是否在列表中

TempStr[-1] in ['C' , 'c']判断前者是否与列表中的某个元素相同

赋值语句:由赋值符号构成的一行代码

赋值符号笔者之前提过,就是我们俗称的等于号,但等于号在编程语言中通常表示赋值,不表示等于号的含义。

1、赋值语句用来给变量赋予新的数据值

C = (eval(TempStr[0:-1]) - 32)/1.8 #右侧运算结果值赋值给C

2、赋值语句右侧的数据类型同时作用于变量

TempStr = input("请输入带有符号的温度值: ") #input返回一个字符串,所以TempStr也是字符串

分支语句:由判断条件决定程序运行方向的语句

1 if TempStr[-1] in ['F', 'f']:

如果条件为True则执行冒号后的语句

2、每个保留字所在行最后存在一个冒号:,是语法的一部分

冒号及后续缩进用来表示后续语句与条件的所属关系

函数:根据输入参数产生不同输出的功能过程

类似于数学中的函数,y=f(x)

print("输入格式错误") #打印出 输入格式错误

函数采用函数名(参数)的方式使用

1 eval(TempStr[0:-1])#TempStr[0:-1]是参数

python的输入输出

input():从控制台获得用户输入的函数

input()函数的使用格式:

1 变量=input (提示信息字符串)

用户输入的信息以字符串类型保存在变量中

1 TempStr=input("请输入") #TempStr保存用户输入的信息

输出函数print()

以字符形式向控制台输出结果的函数

print()函数的基本使用格式

1 print(拟输出字符串或字符串变量)

字符串类型的一对引号仅在程序内部使用,输出无引用

1 print("输入格式错误")#向控制台输出 输入格式错误

print函数的格式化:

1  print("转换后的温度是{:.2f}C".format(C))

{ }表示槽,后续变量填充到槽中

{:.2f}表示将变量C填充到这个位置时取小数点后2位

如果C的值是123.456789,则输出结果为123.45C

评估函数eval():去掉参数最外侧引号并执行余下语句的函数

eval的基本使用格式

1 eval(字符串或字符串变量)

eval("1") 1

python pyqt怎么画圆

这个例子我做了好几天:

1)官网C++的源码,改写成PyQt5版本的代码,好多细节不会转化

2)网上的PyQt的例子根本运行不了

填了无数个坑,结合二者,终于能完成了一个关于绘图的东西。这个过程也掌握了很多新的知识点

【知识点】

1、关于多个点的使用

poitns = [QPoint(10, 80), QPoint(20, 10), QPoint(80, 30), QPoint(90, 70)]

请看:

1      # 定义多个点 2      points = [QPoint(10, 80), QPoint(20, 10), QPoint(80, 30), QPoint(90, 70)] 3  4      # ===直接使用 points 会报错!========= 5      # ... 6      elif self.shape == self.Points: 7            painter.drawPoints(points) 8  9      elif self.shape == self.Polyline:10            painter.drawPolyline(points)11 12      elif self.shape == self.Polygon:13            painter.drawPolygon(points, 4)14 15      # ...16 17      # ===把 points 用 QPolygon()包裹起来才正确!=========18      # ...19      elif self.shape == self.Points:20            painter.drawPoints(QPolygon(points))21 22      elif self.shape == self.Polyline:23            painter.drawPolyline(QPolygon(points))24 25      elif self.shape == self.Polygon:26            painter.drawPolygon(QPolygon(points), 4)27 28      # ...

2、在QDialog窗体中显示QWidget部件

【效果图】

【资源】

【代码】

import sysfrom PyQt5.QtCore import *from PyQt5.QtGui import *from PyQt5.QtWidgets import *class StockDialog(QWidget):    def __init__(self, parent=None):

super(StockDialog, self).__init__(parent)

self.setWindowTitle("利用QPainter绘制各种图形")

mainSplitter = QSplitter(Qt.Horizontal)

mainSplitter.setOpaqueResize(True)

frame = QFrame(mainSplitter)

mainLayout = QGridLayout(frame)        #mainLayout.setMargin(10)

mainLayout.setSpacing(6)

label1=QLabel("形状:")

label2=QLabel("画笔线宽:")

label3=QLabel("画笔颜色:")

label4=QLabel("画笔风格:")

label5=QLabel("画笔顶端:")

label6=QLabel("画笔连接点:")

label7=QLabel("画刷风格:")

label8=QLabel("画刷颜色:")

self.shapeComboBox = QComboBox()

self.shapeComboBox.addItem("Line", "Line")

self.shapeComboBox.addItem("Rectangle", "Rectangle")

self.shapeComboBox.addItem('Rounded Rectangle','Rounded Rectangle')

self.shapeComboBox.addItem('Ellipse','Ellipse')

self.shapeComboBox.addItem('Pie','Pie')

self.shapeComboBox.addItem('Chord','Chord')

self.shapeComboBox.addItem('Path','Path')

self.shapeComboBox.addItem('Polygon','Polygon')

self.shapeComboBox.addItem('Polyline','Polyline')

self.shapeComboBox.addItem('Arc','Arc')

self.shapeComboBox.addItem('Points','Points')

self.shapeComboBox.addItem('Text','Text')

self.shapeComboBox.addItem('Pixmap','Pixmap')

self.widthSpinBox = QSpinBox()

self.widthSpinBox.setRange(0,20)

self.penColorFrame = QFrame()

self.penColorFrame.setAutoFillBackground(True)

self.penColorFrame.setPalette(QPalette(Qt.blue))

self.penColorPushButton = QPushButton("更改")

self.penStyleComboBox = QComboBox()

self.penStyleComboBox.addItem("Solid",Qt.SolidLine)

self.penStyleComboBox.addItem('Dash',  Qt.DashLine)

self.penStyleComboBox.addItem('Dot',  Qt.DotLine)

self.penStyleComboBox.addItem('Dash Dot',  Qt.DashDotLine)

self.penStyleComboBox.addItem('Dash Dot Dot',  Qt.DashDotDotLine)

self.penStyleComboBox.addItem('None',  Qt.NoPen)

self.penCapComboBox = QComboBox()

self.penCapComboBox.addItem("Flat",Qt.FlatCap)

self.penCapComboBox.addItem('Square', Qt.SquareCap)

self.penCapComboBox.addItem('Round', Qt.RoundCap)

self.penJoinComboBox = QComboBox()

self.penJoinComboBox.addItem("Miter",Qt.MiterJoin)

self.penJoinComboBox.addItem('Bebel', Qt.BevelJoin)

self.penJoinComboBox.addItem('Round', Qt.RoundJoin)

self.brushStyleComboBox = QComboBox()

self.brushStyleComboBox.addItem("Linear Gradient",Qt.LinearGradientPattern)

self.brushStyleComboBox.addItem('Radial Gradient', Qt.RadialGradientPattern)

self.brushStyleComboBox.addItem('Conical Gradient', Qt.ConicalGradientPattern)

self.brushStyleComboBox.addItem('Texture', Qt.TexturePattern)

self.brushStyleComboBox.addItem('Solid', Qt.SolidPattern)

self.brushStyleComboBox.addItem('Horizontal', Qt.HorPattern)

self.brushStyleComboBox.addItem('Vertical', Qt.VerPattern)

self.brushStyleComboBox.addItem('Cross', Qt.CrossPattern)

self.brushStyleComboBox.addItem('Backward Diagonal', Qt.BDiagPattern)

self.brushStyleComboBox.addItem('Forward Diagonal', Qt.FDiagPattern)

self.brushStyleComboBox.addItem('Diagonal Cross', Qt.DiagCrossPattern)

self.brushStyleComboBox.addItem('Dense 1', Qt.Dense1Pattern)

self.brushStyleComboBox.addItem('Dense 2', Qt.Dense2Pattern)

self.brushStyleComboBox.addItem('Dense 3', Qt.Dense3Pattern)

self.brushStyleComboBox.addItem('Dense 4', Qt.Dense4Pattern)

self.brushStyleComboBox.addItem('Dense 5', Qt.Dense5Pattern)

self.brushStyleComboBox.addItem('Dense 6', Qt.Dense6Pattern)

self.brushStyleComboBox.addItem('Dense 7', Qt.Dense7Pattern)

self.brushStyleComboBox.addItem('None', Qt.NoBrush)

self.brushColorFrame = QFrame()

self.brushColorFrame.setAutoFillBackground(True)

self.brushColorFrame.setPalette(QPalette(Qt.green))

self.brushColorPushButton = QPushButton("更改")

labelCol=0

contentCol=1

#建立布局

mainLayout.addWidget(label1,1,labelCol)

mainLayout.addWidget(self.shapeComboBox,1,contentCol)

mainLayout.addWidget(label2,2,labelCol)

mainLayout.addWidget(self.widthSpinBox,2,contentCol)

mainLayout.addWidget(label3,4,labelCol)

mainLayout.addWidget(self.penColorFrame,4,contentCol)

mainLayout.addWidget(self.penColorPushButton,4,3)

mainLayout.addWidget(label4,6,labelCol)

mainLayout.addWidget(self.penStyleComboBox,6,contentCol)

mainLayout.addWidget(label5,8,labelCol)

mainLayout.addWidget(self.penCapComboBox,8,contentCol)

mainLayout.addWidget(label6,10,labelCol)

mainLayout.addWidget(self.penJoinComboBox,10,contentCol)

mainLayout.addWidget(label7,12,labelCol)

mainLayout.addWidget(self.brushStyleComboBox,12,contentCol)

mainLayout.addWidget(label8,14,labelCol)

mainLayout.addWidget(self.brushColorFrame,14,contentCol)

mainLayout.addWidget(self.brushColorPushButton,14,3)

mainSplitter1 = QSplitter(Qt.Horizontal)

mainSplitter1.setOpaqueResize(True)

stack1 = QStackedWidget()

stack1.setFrameStyle(QFrame.Panel|QFrame.Raised)

self.area = PaintArea()

stack1.addWidget(self.area)

frame1 = QFrame(mainSplitter1)

mainLayout1 = QVBoxLayout(frame1)        #mainLayout1.setMargin(10)

mainLayout1.setSpacing(6)

mainLayout1.addWidget(stack1)

layout = QGridLayout(self)

layout.addWidget(mainSplitter1,0,0)

layout.addWidget(mainSplitter,0,1)

self.setLayout(layout)

#信号和槽函数        self.shapeComboBox.activated.connect(self.slotShape)

self.widthSpinBox.valueChanged.connect(self.slotPenWidth)

self.penColorPushButton.clicked.connect(self.slotPenColor)

self.penStyleComboBox.activated.connect(self.slotPenStyle)

self.penCapComboBox.activated.connect(self.slotPenCap)

self.penJoinComboBox.activated.connect(self.slotPenJoin)

self.brushStyleComboBox.activated.connect(self.slotBrush)

self.brushColorPushButton.clicked.connect(self.slotBrushColor)

self.slotShape(self.shapeComboBox.currentIndex())

self.slotPenWidth(self.widthSpinBox.value())

self.slotBrush(self.brushStyleComboBox.currentIndex())

def slotShape(self,value):

shape =  self.area.Shape[value]

self.area.setShape(shape)

def slotPenWidth(self,value):

color = self.penColorFrame.palette().color(QPalette.Window)

style = Qt.PenStyle(self.penStyleComboBox.itemData(self.penStyleComboBox.currentIndex(),Qt.UserRole))

cap = Qt.PenCapStyle(self.penCapComboBox.itemData(self.penCapComboBox.currentIndex(),Qt.UserRole))

join = Qt.PenJoinStyle(self.penJoinComboBox.itemData(self.penJoinComboBox.currentIndex(),Qt.UserRole))

self.area.setPen(QPen(color,value,style,cap,join))

def slotPenStyle(self,value):

self.slotPenWidth(value)

def slotPenCap(self,value):

self.slotPenWidth(value)

def slotPenJoin(self,value):

self.slotPenWidth(value)

def slotPenColor(self):

color = QColorDialog.getColor(Qt.blue)

self.penColorFrame.setPalette(QPalette(color))

self.area.setPen(QPen(color))

def slotBrushColor(self):

color = QColorDialog.getColor(Qt.blue)

self.brushColorFrame.setPalette(QPalette(color))

self.slotBrush(self.brushStyleComboBox.currentIndex())

def slotBrush(self,value):

color = self.brushColorFrame.palette().color(QPalette.Window)

style = Qt.BrushStyle(self.brushStyleComboBox.itemData(value,Qt.UserRole))

if(style == Qt.Lin


本文标题:python函数画圆形,Python画圆函数
网页路径:http://myzitong.com/article/hshhoo.html