一、模块

1、标准库

不需要安装,直接调入使用的模块。

import sys模块:

  1. import sys
  2. print(sys.path) #打印环境变量绝对路径
  3. print(sys.argv) #打印当前脚本相对路径

  打印脚本第二个参数:print(sys.argv [2])

import os 模块:

  1. import os
  2. # cmd_res=os.system("dir") #只执行命令,不保存结果
  3. cmd_res=os.popen("dir").read() #执行命令,且保存结果
  4. print("--->",cmd_res)
  5. os.mkdir("new_dir") #在当前目录下创建一个新目录

2、第三方模块

第三方模块是需要安装的模块,当模块没有在当前路径下时,程序运行出错。解决方法:(1)修改环境变量;(2)将模块拷贝到当前目录。

第三方模块的使用:新建一个登陆程序login.py,在同一目录下创建另一个程序reference.py,写入语句:import login,运行程序即可调用login模块。

二、pyc是什么?

一些解释性语言可以通过解释器的优化来对程序作出翻译时对整个程序作出优化,从而在效率上超过编译语言,如Java。当在命令行中输入python hello.py时,其实是激活python解释器,告诉它,你要开始工作了,但在“解释”之前执行的第一项工作和Java一样,是编译:

Java执行语句:JavaC hello.java

运行结果:java hello

(1)当Python在执行命令时,先将编译的结果保存在位于内存中的PyCodeObject中,当程序运行结束后,Python解释器则将PyCodeObject写回到pyc文件中。

(2)Python程序第二次执行时,首先程序会在硬盘中寻找pyc文件,如果找到,则直接载入,否则重复以上过程。

因此,pyc文件其实是PyCodeObject的一种持久化保存方式。

(3)但如果Python程序被改动时问题来了》》》其实在每次运行程序时,Python是先检测有没有此文件,如果有,再检测pyc与源文件的更新时间哪个更新,若源代码文件时间更新,则重新执行(1)。

三、数据类型

1、数字:整型、浮点型

int(整型)、long(长整型)、float(浮点型)、complex(复数)

科学计数法:78.6E4=78.6*10**4=786000

2、布尔型(True、False)

三元运算:result=   值1    if 条件   else   值2

即如果条件为真:result= 值1,如果条件为假:result= 值2 。

例:a,b,c=2,5,3

d=a if a>b else c

四、数据类型转换

在Python3 中二进制统一用bytes类型表示,不会以任意隐式的方式混用str和bytes。因此,不能拼接字符窜和字节包,两者不能互相操作、互相搜索。

str与bytes之间的转换:

  1. msg="螳螂捕蝉"
  2. print(msg)
  3. print(msg.encode(encoding="utf-8")) #字符串编码为二进制
  4. print(msg.encode(encoding="utf-8").decode(encoding="utf-8"))#二进制转换为字符串

运行结果:

  1. 螳螂捕蝉
  2. b'\xe8\x9e\xb3\xe8\x9e\x82\xe6\x8d\x95\xe8\x9d\x89'
  3. 螳螂捕蝉

五、字符串操作 

字符编码与转码:在整个过程中unicode作为一个中间件执行编码与解码命令。

1、GBK与UTF-8之间的转换:

  1. # -*- coding:utf-8 -*-
  2. s="你好"
  3. s_gbk=s.encode("gbk")#编码
  4. print(s)
  5. print(s_gbk)

  6. print("-----gbk转换为utf-8-----")
  7. gbk_to_utf8=s_gbk.decode("gbk").encode("utf-8")
  8. print("utf8",gbk_to_utf8)

  运行结果:

  1. 你好
  2. b'\xc4\xe3\xba\xc3'
  3. -----gbk转换为utf-8-----
  4. utf8 b'\xe4\xbd\xa0\xe5\xa5\xbd'

2、示例:

  1. # -*- coding:utf-8 -*-
  2. s="好好学习" #注意:此时s仍是系统默认的unicode形式,并不受文头 coding:utf-8 的影响
  3. s_to_gb2312=s.encode("gb2312") #所以可以直接编码为gb2312
  4. gb2312_to_utf8=s_to_gb2312.decode("gb2312").encode("utf-8") #gb2312转换为UTF-8
  5. gb2312_to_str=s_to_gb2312.decode("gb2312").encode("utf-8").decode("utf-8") #最终将utf-8转换为字符串输出
  6.  
  7. print(s)
  8. print("gb2312",s_to_gb2312)
  9. print("utf-8",gb2312_to_utf8)
  10. print("str",gb2312_to_str)

  运行结果:

  1. 好好学习
  2. gb2312 b'\xba\xc3\xba\xc3\xd1\xa7\xcf\xb0'
  3. utf-8 b'\xe5\xa5\xbd\xe5\xa5\xbd\xe5\xad\xa6\xe4\xb9\xa0'
  4. str 好好学习

六、字符串操作

 

  1. print(''.join(['1','2','3','4'])) #字符串连接
  2.  
  3. s=str.maketrans("abcdefjk","12345678") #两组字符串一一对应
  4. print("yank".translate(s)) #用数字代替表示字母
  5.  
  6. print('garden'.replace('g','G',1)) #替换
  7. print('gardedn'.rfind('d')) #查找最右边的“d”的索引值
  8. print('2+4+7+8'.split("+")) #将“+”替换为“,”
  9. print('2+3 \n +5+4'.splitlines()) #将换行符用逗号填充

运行结果:

1234
y1n8
Garden
5
['2', '4', '7', '8']
['2+3 ', ' +5+4']

 

Python基础之模块、数据类型及数据类型转换的更多相关文章

  1. (6)java基础知识-基本数据类型、数据类型转换

    一.基本数据类型 基本的数据类型一共有四类八种 1.整型 byte:  1字节 取值范围 -128~127 short: 2字节    取值范围 -32768~32767 int:     4字节 取 ...

  2. python基础2(数据类型、数据运算、for循环、while循环、列表)

    1.数据类型 python使用对象模型来存储数据,每一个数据类型都有一个内置的类,每新建一个数据,实际就是一个对象,即所有数据都是对象. 对象的3个特性: 身份:即内存地址,可以用id()来获取 类型 ...

  3. Python 基础篇:数据类型、数据运算、表达

    1. 数据类型 1.1 数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-231-231-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取 ...

  4. python基础——第三方模块

    python基础——第三方模块 在Python中,安装第三方模块,是通过包管理工具pip完成的.  如果你正在使用Mac或Linux,安装pip本身这个步骤就可以跳过了.  如果你正在使用Window ...

  5. python基础——使用模块

    python基础——使用模块 Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用. 我们以内建的sys模块为例,编写一个hello的模块: #!/usr/bin/env ...

  6. 二十五. Python基础(25)--模块和包

    二十五. Python基础(25)--模块和包 ● 知识框架   ● 模块的属性__name__ # my_module.py   def fun1():     print("Hello& ...

  7. python 基础之 模块

    Python 基础之模块 一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 就是一个python文件中定义好了类和方法,实现了一些功能,可以被别的python文 ...

  8. python 全栈开发,Day50(Javascript简介,第一个JavaScript代码,数据类型,运算符,数据类型转换,流程控制,百度换肤,显示隐藏)

    一.Javascript简介 Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) Jav ...

  9. 【Python之路】第六篇--Python基础之模块

    模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...

随机推荐

  1. 转自52 梦回凉亭的她 Java常见问题,面试题

    收集整理分享# 相关概念## 面向对象的三个特征封装,继承,多态.这个应该是人人皆知.有时候也会加上抽象.## 多态的好处允许不同类对象对同一消息做出响应,即同一消息可以根据发送对象的不同而采用多种不 ...

  2. nodeJS之TCP模块net

    前面的话 TCP服务在网络应用中十分常见,目前大多数的应用都是基于TCP搭建而成的.net模块提供了一个异步网络包装器,用于TCP网络编程,它包含了创建服务器和客户端的方法.本文将详细介绍nodeJS ...

  3. nodeJS之流stream

    前面的话 当内存中无法一次装下需要处理的数据时,或者一边读取一边处理更加高效时,我们就需要用到数据流.NodeJS中通过各种Stream来提供对数据流的操作.本文将详细说明NodeJS中的流strea ...

  4. java基础(五章)

    一.        调试 步骤1:设置断点(不能在空白处设置断点) 步骤2:启动调试 步骤3:调试代码(F6单步跳过)笔记本Fn+F6(F5) 步骤4:结束调试 掌握调试的好处? l  很清晰的看到, ...

  5. abstract关键字

    概念 abstract关键字表示的是抽象的意思,可以用来修饰类和方法.修饰类我们称为抽象类,修饰方法我们称为抽象方法. abstract修饰类,抽象类 1.public  abstract  clas ...

  6. 移动端设置fixed布局的问题解决

    最近写移动端,遇到一个问题就是用fixed属性布局的时候由于手机的原因会出现很多问题,比如说手机端底部固定一块,然后里面有输入框,(类似于手机QQ或者微信底部的输入框一样的布局)这个时候在调用软键盘的 ...

  7. 转发:Ubuntu软件卸载安装的命令

    说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装.卸载和删除的方法. 一.U ...

  8. 关于控制下拉框只读的js控制

    文本框有readonly属性,直接设置:下拉框没有readonly属性,也不能通过其他属性进行只读的设置,下拉框只有disabled属性,但是这个属性设成true之后,值就获取不到了: 我在网上搜了一 ...

  9. idea无法正常使用SVN的解决方法

    问题描述: IntelliJ IDEA安装之后,使用SVN进行提交或更新以及检出代码的时候会出现如下错误: Cannot load supported formats: Cannot run prog ...

  10. Javascript 严格模式use strict

    一.概述 除了正常运行模式,ECMAscript 5添加了第二种运行模式:“严格模式”(strict mode).顾名思义,这种模式使得Javascript在更严格的条件下运行. 设立”严格模式”的目 ...