1. python 用eval(input)畫這樣四個圓 提示用戶輸入半徑
python有兩種編程方式,互動式和文件式。
互動式:對每個輸入語句即時運行結果------適合語法練習
文件式:批量執行一組語句並運行結果------編程的主要方式
實例1:圓面積的計算(根據半徑r計算圓面積)
字元串的使用
使用[ ]獲取字元串中一個或多個字元
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
2. python 如何畫圓
1.調用包函數繪制圓形Circle和橢圓Ellipse
3. 如何用python在正方形中畫圓
來畫出一個正方形,然後通過旋轉3°後,繼續畫一樣的正方形,在通過120次循環後就實現了完整的圓,這里當然也可以用其他的角度和次數,只要能完成360度就可以了。
4. python 繪制一個圓,當單擊窗口的任意位置時圓移動到單擊的位置,如何編寫代碼
#-*-coding:UTF-8-*-
importpygame,sys
frompygame.localsimport*
white=255,255,255
blue=0,0,200
pygame.init()
screen=pygame.display.set_mode((600,800))
myfont=pygame.font.Font(None,20)
textImage=myfont.render("hellogame",True,white)
position=200,200
print(position)
whileTrue:
foreventinpygame.event.get():
ifevent.typein(QUIT,KEYDOWN):
sys.exit()
elifevent.type==MOUSEBUTTONDOWN:
position=event.pos
screen.fill(blue)
screen.blit(textImage,(100,100))
#position=200,200
radius=100
width=10
pygame.draw.circle(screen,white,position,radius,width)
pygame.display.update()
用pygame創建界面並監控滑鼠按下事件,獲得按下位置,畫圓
代碼注意縮進如下圖:
5. 用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()
你可以試試,謝謝。
6. python程序自己輸入半徑的九個同心圓程序
from turtle import *
# 設置窗體的大小和位置,參數依次為窗體的寬、高、相對於桌面起始點的橫坐標、縱坐標
setup(600,400,500,200)
color("red")# 畫筆顏色
pensize(2)# 畫筆寬度
for i in range(1,10):# for循環,用於繪制同心圓
penup()# 畫筆抬起(不會在窗體上留下痕跡)
goto(0,-10*i)# 移動畫筆到坐標(0,-10*i)
pendown()# 畫筆落下(開始在窗體上留下痕跡)
circle(20+i*10) # 在循環中不斷繪制半徑不同的圓
done()
7. python中turtle畫圓的代碼
import turtle
turtle.circle(80)
8. python pyqt怎麼畫圓
這個例子我做了好幾天:
1)官網C++的源碼,改寫成PyQt5版本的代碼,好多細節不會轉化
2)網上的PyQt的例子根本運行不了
填了無數個坑,結合二者,終於能完成了一個關於繪圖的東西。這個過程也掌握了很多新的知識點
【知識點】
1、關於多個點的使用
poitns = [QPoint(10, 80), QPoint(20, 10), QPoint(80, 30), QPoint(90, 70)]
請看:
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
9. 怎麼用Python繪制五環
1、創建python文件,test5circle.py;
10. python怎麼用turtle畫圓
turtle.circle ()
Turtle庫是Python語言中一個很流行的繪制圖像的函數庫,想像一個小烏龜,在一個橫軸為x、縱軸為y的坐標系原點,(0,0)位置開始,它根據一組函數指令的控制,在這個平面坐標系中移動,從而在它爬行的路徑上繪制了圖形。