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培养面向对象编程的思维。