20191113 2019-2020-2 《Python程序設計》實驗一報告
課程:《Python程序設計》
班級:1911
姓名:林紫欣
學號:20191113
實驗教師:王志強
實驗日期:2020年4月11日
必修/選修: 公選課
1.實驗內容
- 熟悉Python開發環境,本報告以PyCharm為例,對其進行安裝、激活、設置;
- 練習Python運行
- 編寫程序,練習變量和類型、字符串、對象、縮進和注釋等;
- 練習Python調試技能
- 掌握Git技能
2. 實驗過程及結果
PyCharm的安裝與激活
- 進入PyCharm的官方網站或者直接打開PyCharm下載界面,根據教程PyCharm安裝教程完成安裝、激活。
- 過程詳見20191113林紫欣 PyCharm安裝與激活過程
PyCharm的設置
- 選擇python 解析器,目的是確定pycharm的運行環境。
方法: File-->Settings-->Project:-->Project Interpreter
選擇需要的python環境,點擊apply 即可。
- 設置主題、字體
方法: File-->Setting-->Editor-->Colors & Fonts-->Font-->Scheme 處選擇Darcula類型
練習Python運行
- 創建工程
File-->New Project,在Location 處給出路徑及名稱;選擇Open in new window 或者 Open in current window。
- 創建Python File
選擇工程名稱,New-->python file,輸入名稱,點擊OK 即完成創建。
- 編寫並運行代碼
當代碼編寫完成之后,點擊Run按鈕進行編譯運行。或者通過快捷鍵 Shift+Alt+F10。
編寫程序
注明:簡單練習皆在Python 3.8.1 Shell中完成。
練習變量
- 變量:名字,標簽
- 在Python中變量無需聲明,可以直接定義,變量類型可以隨時變化,允許多個變量指向同一個值。
- 命名規則:必須是一個有效的標識符;選擇有意義的單詞;不能使用保留字;謹慎使用 l、o。
>>> t = 13
>>> type(t)
<class 'int'>
>>> t = 13.14
>>> type(t)
<class 'float'>
>>> t = "Lzx"
>>> type(t)
<class 'str'>
>>> t1 = t
>>> t1
'Lzx'
>>>
- 保留字與標識符:
保留字:系統留用的有特殊意義的一些單詞,在IDE中輸入會變色,區分大小寫;
可通過代碼查看:
>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>>
- 標識符:名字——命名規則:字母+_+數字,數字不能放在第一位,不能有特殊字符、空格,盡量不要使用漢字作為標識符。
以下划線開頭的標識符有特殊意義:單下划線,保護變量;雙下划線,類的私有成員;雙下划線開頭並結尾,專用標識。
練習對象
- 所有python對象都擁有三個特性:身份、類型、值
- 身份:每個對象都有一個唯一的身份標識自己,任何對象的身份可以使用內建函數 id() 來得到。
- 類型:對象的類型決定了該對象可以保存什么類型的值,可以進行什么樣的操作,以及遵循什么樣的規則。可以使用 type() 函數查看python對象的類型。type()返回的是對象而不是簡單的字符串。
- 值:對象表示的數據。
>>> value = "abc"
>>> id(value) #身份
39102784L
>>> type(value) #類型
<type 'str'>
>>> value #值
'abc'
練習類型
- 標准類型
- 數字(分為幾個字類型,其中三個是整型)
- Integer 整型
- Boolean 布爾型
- Long integer 長整型
- Floating point real number 浮點型
- Complex number 復數型
- String 字符串
- List 列表
- Tuple 元祖
- Dictionary 字典
- 其他內建類型
類型、Null對象(None)、文件、集合/固定集合、函數/方法、模塊、類 - 通過type()函數可以查看對象的類型
>>> type(1)
<type 'int'> #它是一個類型對象
>>> type("123")
<type 'str'> #它是一個類型對象
>>> type([1,2,"3"])
<type 'list'> #它是一個類型對象
>>> type((1,2,"3"))
<type 'tuple'> #它是一個類型對象
>>>
- 類型對象的類型是type,它是所有python類型的根和所有python標准類的默認元類
>>> type(type(1))
<type 'type'>
>>> type(type("123"))
<type 'type'>
>>>
- 注意:所有標准對象均可用於布爾測試,同類型的對象之間可以比較大小。每個對象天生具有布爾True或False值。值為零的任何數字或者Null對象None的布爾值都是False。
- 下列對象的布爾值是False:None、False、所有的值為零的數、0(整數)、0.0(浮點數)、0L(長整數)、0.0+0.0j(復數)、“”(空字符串)、[](空列表)、()(空元祖)、{}(空字典)。值不是上面列出來的任何值的對象的布爾值都是True。
練習字符串
- Python中字符串被定義為引號之間的字符集合。Python 支持使用成對的單引號或雙引號, 三引號(三個連續的單引號或者雙引號)可以用來包含特殊字符。使用索引運算符( [ ] )和切 片運算符( [ : ] )可以得到子字符串。字符串有其特有的索引規則:第一個字符的索引是 0, 最后一個字符的索引是 -1 加號( + )用於字符串連接運算,星號( * )則用於字符串重復。
>>> str = 'python'
>>> iscool = 'is cool!'
>>> str[0]
'p'
>>> str[2:5]
'tho'
>>> iscool[:2]
'is'
>>> iscool[3:]
'cool!'
>>> iscool[-1]
'!'
>>> str + iscool
'pythonis cool!'
>>> str + ' ' + iscool
'python is cool!'
>>>
>>> str * 2
'pythonpython'
>>> str = '''python
... is cool'''
>>> str
'python\n... is cool'
>>> print str
python
... is cool
>>>
練習縮進和注釋
-
代碼縮進;
同一個級別的代碼塊的縮進量必須相同。- 單行縮進:Tab
- 多行縮進:選定縮進代碼,Tab+Shift
-
注釋規則:
- 單行注釋:#
- 多行注釋:''' …… ''' or """ …… """ or 選定注釋代碼,Ctrl+/
- 中文編碼聲明注釋:# -- coding: 編碼 -- or #coding=編碼
其中編碼可為utf-8(國際編碼,推薦使用),gbk(專門中文編碼)或cp936
# -*- coding: utf-8 -*-
'''
作者:20191113 林紫欣
文件名稱:實驗報告
時間:2020年4月11日
'''
Python調試技能(PyCharm)
- 命令參數如何傳入
import sys
sys.argv[i]:i是參數索引,從0開始; - debug技巧:
- F9: debug調試,Resume Program
- ctrl+F5: 重新執行
- Ctrl+Shift+F8: View Breakpoints
- F8: Step Over執行下一行
- F7: Step Into
- Shift+Alt+F7: Step Into My Code
- Shift+F8: Step Out跳出當前方法
- Alt+F9: Run to Cursor執行到下一個斷點
- Alt+F8: Evaluate Expression
掌握Git技能
- 按照PyCharm使用Git完成配置
- VCS-->Commit-->VCS-->Git-->Push
3. 實驗過程中遇到的問題和解決過程
- 問題1:打代碼的時候縱使沒有錯,仍然會出現波浪線
問題1解決方案:查閱資料,File-->Setting-->Editor-->Color Scheme-->General-->Errors and Warnings-->weak Waring - 問題2:Git配置有誤,所希望Push的倉庫地址與PyCharm中的倉庫地址不同
問題2解決方案:VCS-->Git-->Remotes - 問題3:打代碼時下意識添加“;”
問題3解決方案:由於對C有了慣性思維,從而遺忘了Python的語法規則,在之后的練習中時刻提醒自己 - 問題4:激活碼經常性失效
問題4解決方案:盡早通過學校郵箱申請學生免費賬號
其他(感悟、思考等)
我對python的認識:
- 人工智能主要應用的計算機語言就是python,它將在未來大放異彩。
- python語言較為簡潔,易於編寫操作。
- python有很多庫,方便做很多東西。
希望能通過Python培養面向對象編程的思維。