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('
')

"""对象"""

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学习中会遇到很多问题,事实上,在计算机实践课程中都是如此。在网上查找自己的问题基本可以解决所有问题,这是一个自学和提高的过程,但有时需要耐心和尝试,因为问题既有共性又有特性。掌握自主解决问题的能力是极为重要的。

参考资料

原文地址:https://www.cnblogs.com/hardcoreYutian/p/12678097.html