0%

Python-03improve

模块(import)

利用模块可以更加方便的使用Python实现一些功能
a)自定义模块
在Pycharm中新建一个Python文件,注意给它的命名最好是英文,否则可能Pycharm不识别。
如图所示:新建了一个文件,在其中写下自定义模块的内容
在这里插入图片描述
作用为打招呼
然后再新建一个Python文件,这个命名好像没有要求了
在第二个文件中输入import + 模块名,例如
在这里插入图片描述
运行即可调用之前写的自定义模块
在这里插入图片描述
也可以进行更改
在这里插入图片描述
运行结果为
在这里插入图片描述
自定义模块和路径查找有关通过

1
2
import sys
print(sys.path)

可以看等等
b)第三方模块
安装:文件–设置–如图所示,点+号,搜索库
在这里插入图片描述
在这里插入图片描述
安装,
即可看到
在这里插入图片描述安装成功
可能会遇到的问题:

清华:https://pypi.tuna.tsinghua.edu.cn/simple
阿里:http://mirrors.aliyun.com/pypi/simple/
豆瓣:http://pypi.douban.com/simple/
华中理工大学:http://pypi.hustunique.com/
山东理工大学:http://pypi.sdutlinux.org/
中国科学技术大学:http://pypi.mirrors.ustc.edu.cn/
在这里插入图片描述
在这里插入图片描述
嗯…当然也许这样也不行,,我挂着校园网就下载不下来,得用实验室的网…

1
pip -V     //在cmd中查看pip是否安装完成和版本

如果出现了

1
2
'pip' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

则是因为没有配置环境,找到python目录下的Scripts文件夹,复制路径
在环境变量中添加
在这里插入图片描述
然后再查即可

  • 如,搜到了库但是安装不上,出现了如图所示的报错
1
2
3
Try to run this command from the system terminal. 
Make sure that you use the correct version of 'pip' installed for your Python interpreter located at
'C:\Users\86135\Desktop\Python\python.exe'.

在这里插入图片描述
可能因为pip的版本不对
我们在cmd中输入

1
python -m pip show pip

即会出现
在这里插入图片描述
按照提示操作解决就可以
from … import 语句
Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中,语法如下:

1
from modname import name1[, name2[, ... nameN]]

例如,要导入模块 fibo 的 fib 函数,使用如下语句:

1
2
3
from fibo import fib, fib2
fib(500)
1 1 2 3 5 8 13 21 34 55 89 144 233 377

这个声明不会把整个fibo模块导入到当前的命名空间中,它只会将fibo里的fib函数引入进来。
输出base64格式转换过后的字符串(使用pybase64库)(t为待输出的变量值)

1
print(pybase64.b64encode(t.encode('utf-8')))

PY3的输入输出

Python两种输出值的方式: 表达式语句和 print() 函数。
第三种方式是使用文件对象的 write() 方法,标准输出文件可以用 sys.stdout 引用。
如果你希望输出的形式更加多样,可以使用 str.format() 函数来格式化输出值。
如果你希望将输出的值转成字符串,可以使用 repr() 或 str() 函数来实现。

  • str(): 函数返回一个用户易读的表达形式。
  • repr(): 产生一个解释器易读的表达形式。

    内置函数

    a)Python eval() 函数
    eval() 函数用来执行一个字符串表达式,并返回表达式的值。
    以下是 eval() 方法的语法:
1
eval(expression[, globals[, locals]])
  • expression – 表达式。
  • globals – 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
  • locals – 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。

返回表达式计算结果。
以下展示了使用 eval() 方法的实例:

1
2
3
x = 7
eval( '3 * x' )
21

b)Python format 格式化函数
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。
基本语法是通过 {} 和 : 来代替以前的 % 。
format 函数可以接受不限个参数,位置可以不按顺序。
实例

1
2
3
4
5
6
7
8
>>>"{} {}".format("hello", "world")    # 不设置指定位置,按默认顺序
'hello world'

>>> "{0} {1}".format("hello", "world") # 设置指定位置
'hello world'

>>> "{1} {0} {1}".format("hello", "world") # 设置指定位置
'world hello world'

C)Python异常

1
2
3
4
5
6
while True:
try:
x = int(input("请输入一个数字: "))
break
except ValueError:
print("您输入的不是数字,请再次尝试输入!")

例如

1
2
3
4
5
6
7
8
9
10
11
12
while True:
try:
num=float(input('请输入一个数字:'))
if num==0:
print('输入的数字是零')
elif num>0:
print('输入的数字是正数')
else:
print('输入的数字是负数')
break
except ValueError:
print('输入无效,需要输入一个数字')

d)Python ASCII码与字符相互转换
以下代码用于实现ASCII码与字符相互转换:

1
2
3
4
5
6
7
8
9
10
11
12
# Filename : test.py
# author by : www.runoob.com

# 用户输入字符
c = input("请输入一个字符: ")

# 用户输入ASCII码,并将输入的数字转为整型
a = int(input("请输入一个ASCII码: "))

print( c + " 的ASCII 码为", ord(c))
print( a , " 对应的字符为", chr(a))

执行以上代码输出结果为:

1
2
3
4
5
python3 test.py 
请输入一个字符: a
请输入一个ASCII码: 101
a 的ASCII 码为 97
101 对应的字符为 e