20181218 實驗一《Python程序設計》實驗報告


20181218 2019-2020-2 《Python程序設計》實驗一報告

課程:《Python程序設計》
班級: 1812
姓名:
學號:20181218
實驗教師:王志強
實驗日期:2020年4月11日
必修/選修: 公選課

1.實驗內容

  • 熟悉Python開發環境;
  • 練習Python運行、調試技能;
  • 編寫程序,練習變量和類型、字符串、對象、縮進和注釋等;
  • 掌握git技能

2. 實驗過程及結果

Python2與Python3

直接到Python的官方網站下載Python,應選擇自己的操作系統對應版本安裝,Python分2.x和3.x版本,2.x在2020年已經要逐步淘汰。如果同時安裝了Python2和Python3,那么在命令行可以使用py -2py -3來分別執行。比如,想要使用Python2運行1.py,那么在命令行中輸入py -2 1.py執行即可。
如果需要使用pip工具,那么命令分別為py -2 -m pip install 要安裝的庫py -3 -m pip install 要安裝的庫
當然,如果想在任意路徑執行Python,則需要對Python配置環境變量,而Python在安裝時是可以勾選Path的,省去之后自己配置環境變量的麻煩。
同時安裝Python2和Python3的好處是,網絡上仍有許多腳本是由Python2來編寫的,而且如果遇到第三方庫只支持Python2或Python3時,可以選取對應版本的Python來運行。例如我電腦的Python2可以使用gmpy2庫,而Python3可以使用rsa庫,那么兩個版本的Python我都需要。

Pycharm運行和調試代碼

Pycharm建立項目時會形成一個虛擬環境,可以配置項目Python的庫等等。安裝第三方庫的方法為File->Settings->項目->Project Interpreter,點擊右側加號即可。

新建項目后,在項目區域右鍵->New->Python File,新建一個.py文件就可以寫代碼了。運行當前代碼的快捷鍵是光標在代碼區時,CTRL+SHIFT+F10運行。如果想要自己配置運行使用的Python版本,那么點擊右上方的Python圖標->Edit Configurations。

調試的方式是點擊右上角的小蟲子圖標,或者使用SHIFT+F9快捷鍵。可以在代碼左側行號處單擊鼠標左鍵打上斷點,這樣調試時就會在斷點處停下。可以在下方的變量區查看各變量的值。單步運行快捷鍵為F8和F7,其中F8把函數作為單獨的一步,而F7則會進入函數一步步執行。

測試程序

代碼如下:

# -*- coding: utf-8 -*-
# @Time    : 2020/4/11 10:59
# @Author  : 20181218-sl
# @Email   : 1743207528@qq.com
# @File    : exp1.py
# @Software: PyCharm

print("helloworld!")

"""變量"""

a = "1"
A = 1 # Python是大小寫敏感的
_a = True # 下划線可以做變量名開頭
a1 = 1.0 # 數字不可以做變量名開頭
A1 = [1]
aA = {1}
Aa ={1:'h'}
Aa1 = (1)
aA1 = (1,4)

"""變量類型"""

print(type(a),end=' ')
print(type(A),end=' ')
print(type(_a),end=' ')
print(type(a1))
print(type(A1),end=' ')
print(type(aA),end=' ')
print(type(Aa),end=' ')
print(type(Aa1))
print(type(aA1))

"""字符串和縮進"""

# 字符串逆序
ori = "helloworld"
re = ori[::-1]
print(re)
# 按位異或、16進制轉字符
str = "]U[du~|t@{z@wj.}.~q@gjz{z@wzqW~/b"
for i in str:
    print(chr(ord(i)^0x1F),end='') # 條件語句、循環語句內部分需要縮進4個空格
print('\n')

"""對象"""

class Dio:
    holding = "stoneface"
    body = "Jonathan's body"
    __servant = "vampire servant" # 私有屬性
    food = "bread"
    def __init__(self):
        print("Kono Dio da!!!")
    def __eyedark(self): # 私有方法
        print("這招以血蒙眼如何!")
    def fly(self):
        print("I can fly!!!")
    def eat(self):
        print("食物是面包")

class Kazi(Dio): # 繼承
    body = "Everything" # 覆蓋屬性
    def __init__(self):
        print("究極生物")
    def eat(self):
        print("食物是吸血鬼") # 方法重寫

kazi = Kazi() # 實例化
print(kazi.holding)
print(kazi.body)
kazi.eat()
kazi.fly() # 繼承方法

代碼的碼雲鏈接為:https://gitee.com/python_programming/sl_20181218/commit/bf896614e3fa3422976193ae1ec273a58f7fc904
包含#和"""兩種模式的注釋,用"""注釋分開四部分,分別是變量、變量類型、字符串和縮進、對象。並未面面俱到,只是在每個方面選取了一點自認為有趣或重要的知識點,一些解釋我都寫在代碼注釋中了。遇到的比較有趣的地方是,a = (1)的變量a的類型為int,而a = (1,2)的變量a的類型為tuple

git的使用

關於git-Pycharm-碼雲的配置我已經制作視頻上傳,鏈接為:https://www.bilibili.com/video/BV1i7411A7Sp/
配置后,新建的.py文件會自動加入到git中,如果想commit,則使用快捷鍵CTRL+K,如果想push,則使用快捷鍵CTRL+SHIFT+K。

3. 實驗過程中遇到的問題和解決過程

在本次實驗中並未遇到問題,很多問題是以前遇到並解決的,現在都已作為定論形成在實驗內容中,比如Windows同時安裝Python2和Python3的兼容和使用、gmpy2庫的安裝、git的配置等等。廣泛地講,解決問題的過程都是搜索大量博客,多次嘗試,最終找到自己問題的解決方法。

其他(感悟、思考等)

對於Python語言

Python非常簡潔方便,也具有大量第三方庫供使用,使得Python成為一個很好的CTF腳本工具,熟練掌握Python語法、Pycharm的使用對做題很有幫助。

對於解決問題

在Python學習中會遇到很多問題,事實上,在計算機實踐課程中都是如此。在網上查找自己的問題基本可以解決所有問題,這是一個自學和提高的過程,但有時需要耐心和嘗試,因為問題既有共性又有特性。掌握自主解決問題的能力是極為重要的。

參考資料


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM