日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python02 标准输入输出、数据类型、变量、随记数的生成、turtle模块详解

發布時間:2024/6/30 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python02 标准输入输出、数据类型、变量、随记数的生成、turtle模块详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1 標準輸出

  python3利用 print() 來實現標準輸出

def print(self, *args, sep=' ', end='\n', file=None): # known special case of print"""print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)Prints the values to a stream, or to sys.stdout by default.Optional keyword arguments:file: a file-like object (stream); defaults to the current sys.stdout.sep: string inserted between values, default a space.end: string appended after the last value, default a newline.flush: whether to forcibly flush the stream."""pass

  1.1 輸出字符串

    在 sprint() 的括號中加上字符串就可以在控制臺輸出指定的文字,比如輸出 “Hello Boy” 的實現代碼如下

print("Hello Boy")

    

  1.2 輸出多個字符串

    print() 函數可以接收多個字符串,各個字符串之間用逗號進行隔開,在輸出時逗號不會輸出而是用空格代替

print("Hello", "Boy", "Good", "World")

    技巧01:print() 可以接收多個字符串的原理是print() 方法可以接收任意多個參數,這一點從源碼中可以看出;詳情請參見方法的形參部分知識點

    技巧02:遇到逗號用空格代替的原因是print()方法有一個默認參數 seq ,該參數的作用就是作為多個輸出值的分隔符,其默認值就是空格  

    

    

  1.3 輸出整數或者計算結果

    輸出整數時直接會將整數進行輸出,輸出計算結果時會對數學表達式進行計算后再將結果進行輸出

    

  1.4 輸出多個變量

    print() 方法也可以接收多個變量進行輸出,各個變量之間利用逗號進行分隔

    

  1.5 結束符

    print() 方法默認的結束符時換行符,這一點從源碼中可以看出

    1.5.1 默認結束符的效果

      

    1.5.2 自定義結束符的效果

      

?

2 標準輸入

  python3提供的input()方法可以讓用戶輸入一個字符串,并存放到一個變量中去;print()方法可以在括號中添加提示信息,這些提示信息會被輸出到控制臺

def input(*args, **kwargs): # real signature unknown"""Read a string from standard input. The trailing newline is stripped.The prompt string, if given, is printed to standard output without atrailing newline before reading input.If the user hits EOF (*nix: Ctrl-D, Windows: Ctrl-Z+Return), raise EOFError.On *nix systems, readline is used if available."""pass

  2.1 輸入字符串

    

  2.2 輸入類型

    利用input()輸入的數據都是字符串類型的數據

    

    坑01:利用input()輸入的任何數據都是字符串類型的數據,如果想利用輸入的數據進行一些數學運算就必須進行類型轉換

    2.2.1 input()實戰

      需求:用戶根據提示信息提供圓的半徑和圓周率的取值,系統自動輸出直徑、圓周、面積等信息

      坑01:在進行數學計算之前如果不對數據進行類型轉化就會報類型錯誤

      

radius = input("請輸入半徑:\n") PI = input("請輸入圓周率的取值:\n") diameter = float(radius) * 2 area = float(PI) * float(radius) * float(radius) perimeter = float(PI) * diameter print("直徑為:", diameter, ";周長為:", perimeter, "; 面積為:", area) View Code

?

3 數據類型

  在程序中不同的數據需要定義不同的數據類型

  3.1 整型

    Python可以處理任意大小的整數,當然包括負整數,在程序中的表示方法和數學上的寫法一模一樣,例如:1,100,-8080,0,等等。計算機由于使用二進制,所以,有時候用十六進制表示整數比較方便,十六進制用0x前綴和0-9,a-f表示,例如:0xff00,0xa5b4c3d2,等等。

    技巧01:利用print()方法輸出十六進制的數時輸出的是轉化成了十進制的數

    

  3.2 浮點型

    浮點數也就是小數;浮點數可以用數學寫法,如1.23,3.14,-9.01;但是對于很大或很小的浮點數,就必須用科學計數法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以寫成1.2e-5,等等。

    

  3.3 字符串

    字符串是以單引號'或雙引號"括起來的任意文本,比如'abc',"xyz"等等。請注意,''或""本身只是一種表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c這3個字符。如果'本身也是一個字符,那就可以用""括起來,比如"I'm OK"包含的字符是I,',m,空格,O,K這6個字符。如果字符串內部既包含'又包含"怎么辦?可以用轉義字符\來標識。

    

    

    3.3.1 多行字符串

      \n 這個轉義字符代表換行,為了簡化,Python允許用'''...'''的格式表示多行內容

?      

  3.4 布爾型

    布爾值和布爾代數的表示完全一致,一個布爾值只有True、False兩種值,要么是True,要么是False,在Python中,可以直接用True、False表示布爾值(請注意大小寫),也可以通過布爾運算計算出來。

    

  3.5 空值

    空值是Python里一個特殊的值,用None表示。None不能理解為0,因為0是有意義的,而None是一個特殊的空值。

  3.6 其他類型

    列表、字典等多種數據類型,還允許創建自定義數據類型(即:對象)

    待更新......2018-3-20 10:25:44

?  

4 變量

  變量的概念基本上和初中代數的方程變量是一致的,只是在計算機程序中,變量不僅可以是數字,還可以是任意數據類型。

  變量在程序中就是用一個變量名表示了,變量名必須是大小寫英文、數字和_的組合,且不能用數字開頭,比如:這種變量本身類型不固定的語言稱之為動態語言,與之對應的是靜態語言。靜態語言在定義變量時必須指定變量類型,如果賦值的時候類型不匹配,就會報錯。例如Java是靜態語言,賦值語句為:String name = new String("warrior");

  因為python是動態語言,所以一個變量的類型取決于該變量的指向,如果該變量的指向的東西的類型發生了變化,那么該變量的類型也會發生變化

  

  4.1 變量在內存中的表示

    技巧01:在python中一切都是對象,所以python中變量存儲的都是地址信息而不是數據值;變量的值就是變量指向數據的地址信息

name = "warrior"

    4.1.1 python解釋器會根據上面的代碼做兩件事

      》在內存中創建一個“warrior”字符串

      》在內存中創建一個名為name的變量,而且該變量指向“warrior”

    4.1.2 變量之間的賦值

      

      坑01:這里并不是將name01的值賦值給了name02,而是name02指向name01指向的數據

      技巧01:因為name01和name02都指向同一個字符串"warrior",所以name01和name02的內容都是字符串"warrior"在內存中的地址信息(備注:因為name01和哪么02都指向了同一個字符串,所以他們的內存地址是一樣的,他們的值也是一樣的)

 

      解釋:

        python解釋器在遇到?name02 = name01 這行代碼時執行的操作

          》在內存中創建一個名為name02變量

          》讓name02變量指向name01所指向的內容(理解:name01和name02中存放的不是數據,而實數據對應的地址信息,name02 = name01實際上是將name01中存放的地址信息賦值給了name02)

    

      解釋:

        python解釋器在遇到?name02 = “fury” 這行代碼時執行的操作

          》改變name02的指向,即:改變name02中存放的地址信息值

          技巧01:變量的指向發生變化后,變量的值以及變量的地址都會發生變化

          技巧02:變量的值就是變量指向數據的地址信息

name01 = "warrior" name02 = name01 print("name01指向的值為:",name01,"-----", "name02指向的值為:",name02) print("name01變量的地址信息為:", id(name01),"-----", "name02變量的地址信息為:", id(name02)) print(name01 is name02) print(name01 == name02) name01 = "fury" print("name01指向的值為:",name01,"-----", "name02指向的值為:",name02) print("name01變量的地址信息為:", id(name01),"-----", "name02變量的地址信息為:", id(name02)) print(name01 is name02) print(name01 == name02) View Code

?

5 隨機數

  python自帶的random模塊可以用來生成隨機數

  5.1 猜數字游戲

    5.1.1 需求

      隨機產生一個數字同用戶輸入的數字進行比較,知道猜中為止

    5.1.2 代碼實現

      

import random randomNum = random.randint(0,10) inputNum = input("請輸入一個0到10之間的整數:") judge = True while (judge):if (randomNum != int(inputNum)):if (randomNum < int(inputNum)):inputNum = input("大啦,請在輸入一個0到10之間的整數:")if (randomNum > int(inputNum)):inputNum = input("小啦,請在輸入一個0到10之間的整數:")else:print("恭喜你,才對啦!")judge = False View Code

?    5.1.3 改進

      規定輸入次數、設定隨記數范圍

?

6 turtle模塊

?  6.1 命令介紹

    6.1.1 運動命令

      forward(d) -> 向前移動d個像素點

      backward(d) -> 向后移動d個像素點

      right(dgree) -> 向右轉動dgree度

      left(dgree) -> 向左轉動dgree度

      goto(x, y) -> 光標移動到(x, y)處

      speed(apeed) -> 設定畫筆的速度,速度值為[0, 10]之間的整數

    6.1.2 畫筆控制命令

      down() -> 畫筆落下,即:開始畫圖

      up() -> 畫筆抬起,即:停止畫圖

        技巧01:goto(x,y) 之前一般需要執行up(),goto(x, y)之后一般需要執行down()  

      pensize(width) -> 設置畫筆的寬度的像素值

      pencolor(color) -> 設置畫筆的寬度

      fillcolor(color) -> 設置填充顏色

        技巧02:fillcolor(color)通常需要和 begin_fill() 和 end_fill() 配合使用

      begin_fill() -> 開始填充顏色

      end_fill() -> 結束填充顏色

    6.1.3 特殊指令

      turtle.mainloop() -> 畫圖結束后靜止(注:其實是一直在重復畫,只是給我們個感覺是靜止而已)

  6.2 練習

    6.2.1 畫正三角形

      

# 畫三角形 import turtle t = turtle.Pen() t.fillcolor("blue") t.pencolor("red") t.pensize(4) t.begin_fill() t.forward(60) t.left(120) t.forward(60) t.left(120) t.forward(60) t.end_fill() turtle.mainloop() View Code

    6.2.2 畫奧運五環

      

# 話奧運五環 import turtle t = turtle.Pen() t.pensize(4)t.pencolor("blue") t.circle(30)t.up() t.goto(70, 0) t.down() t.pencolor("black") t.circle(30)t.up() t.goto(140, 0) t.down() t.pencolor("red") t.circle(30)t.up() t.goto(35, -35) t.down() t.pencolor("yellow") t.circle(30)t.up() t.goto(105, -35) t.down() t.pencolor("green") t.circle(30)turtle.mainloop() View Code

    6.2.3 利用循環畫

      

import turtle # 同時設置pencolor=color1, fillcolor=color2 turtle.color("red", "yellow")turtle.begin_fill() for i in range(50):turtle.forward(200)turtle.left(170) turtle.end_fill() turtle.mainloop() View Code

?    6.2.4 畫五角星

      

import turtle t = turtle.Pen() t.pencolor("yellow") t.fillcolor("red") t.pensize(4) t.begin_fill() for i in range(5):t.forward(100)t.right(144) t.end_fill() turtle.mainloop() View Code

?

轉載于:https://www.cnblogs.com/NeverCtrl-C/p/8608164.html

總結

以上是生活随笔為你收集整理的Python02 标准输入输出、数据类型、变量、随记数的生成、turtle模块详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。