第一天 11-15 python基础

######### 使用和导入模块 ####################

什么是模块?

第三方的、别人或自己已经开发好的模块,在不同的程序之间可以加载导入进来,调用里面的功能。

os:和操作系统进行交互的模块

>>> import os
>>> os.system(‘df -Th‘)
Filesystem     Type   Size  Used Avail Use% Mounted on
/dev/xvda2     ext4    26G  7.1G   17G  30% /
tmpfs          tmpfs  919M     0  919M   0% /dev/shm
/dev/xvda1     ext4   291M   57M  219M  21% /boot
0  ----执行命令返回的状态,可以存放到一个变量中。

>>> cur_dir=os.system(‘pwd‘)
/home/robin
>>> print cur_dir #存放的是命令返回状态,而不是命令执行的输出结果
0

将命令的执行结果存入变量的方法:

方法一:

>>> import os

>>> os.popen(‘pwd‘)         
<open file ‘pwd‘, mode ‘r‘ at 0x7f311fd6ec00>
>>> a=os.popen(‘pwd‘).read()
>>> a
‘/home/robin\n‘

方法二:

>>> import commands
>>> result=commands.getstatusoutput(‘pwd‘)
>>> result
(0, ‘/home/robin‘) ##同时存放了命令的返回状态和命令执行的输出结果

方法三:

>>> import subprocess

在python中使用tab补全功能

>>> import tab

然后就可以使用tab补全功能了。

补充:

1,os.walk 遍历目录树

eg:

>>> a=os.walk(‘/tmp‘)
>>> a.next()
(‘/tmp‘, [‘.ICE-unix‘, ‘ssh-TFiGeM3099‘, ‘gitosis‘], [‘zabbix_agentd.pid‘, ‘logrotate.pid‘, ‘zabbix_agentd.log‘, ‘php-cgi.sock‘, ‘supervisor.sock‘, ‘mounts.tmp‘])
>>> a.next()
(‘/tmp/.ICE-unix‘, [], [])

2,sys模块

[[email protected] robin]# cat ex1.py

#!/usr/bin/env python
# coding:utf-8
import sys
print sys.argv     #打印执行脚本后面跟的参数

print sys.argv[0]  #打印执行脚本后面跟的指定参数

print sys.argv[1]
print sys.argv[2]
[[email protected] robin]# python ex1.py  arg1 A 3 4 5
[‘ex1.py‘, ‘arg1‘, ‘A‘, ‘3‘, ‘4‘, ‘5‘]
ex1.py
arg1
A

如何导入模块

import sys

导入sys模块的所有内容,然后通过sys.argv这样的形式调用方法

from sys import argv

指定导入sys模块下的argv方法,然后通过argv这样的形式直接调用

eg:

[[email protected] robin]# cat ex1.py
#!/usr/bin/env python
# coding:utf-8
from sys import argv
print argv
print argv[0]
print argv[1]
print argv[2]
[[email protected] robin]# python ex1.py  arg1 A 3 4 5
[‘ex1.py‘, ‘arg1‘, ‘A‘, ‘3‘, ‘4‘, ‘5‘]
ex1.py
arg1
A

同理,如果写成 from sys import * ,则调用模块下任何方法都可用argv这样直接写方法名,而不用sys.argv---不建议使用这种方式,因为比如sys模块中有path的方法,而如果程序中也定义了path变量,那么调用的时候则会冲突覆盖。这样调用sys模块中有很多方法是不知道名字的,所以有可能会冲突哈

#给模块起别名

import multiprocessing as multi

######### 用户交互和格式化输出 ########################

######### 流程控制if for循环 #######################

######### while 循环基中断控制 ########################

######### 作业需求 ########################

时间: 2024-10-12 14:26:37

第一天 11-15 python基础的相关文章

Python之路【第一篇】:Python基础

本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语句 表达式for 循环 break and continue 表达式while 循环 作业需求 一. Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语

图解Python 【第一篇】:Python基础1

本节内容一览图 一.Python简介  Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承. 最新的TIOBE排行榜,Python赶超PHP占据第五!!! 由上图可见,Python整体呈上升趋势,反映出Python应用越来越广泛并且也逐渐得到业内的认可!!! 目前Python主要应用领域: 云计算: 云计算最火的语言, 典型应用Ope

2015/9/15 Python基础(12):模块和包

模块是用来组织 Python 代码的方法,而包则是用来组织模块的. 当代码量很大时,我们一般会把代码分成几个有组织的代码段,然后每个代码段之间有一定的联系.代码单之间是共享的,所以Python允许调入一个模块,允许使用其他模块的属性利用之前的工作成果,实现代码重用.那些自我包含并且有组织的代码片段就是模块(module),将其他模块中属性附加到你的模块中的操作较导入(import) 模块是逻辑上的说法,而它们在物理层是一个个独立的文件,模块的文件名就是模块的名字加拓展名.py.与其他可以导入类的

Python之路【第一篇】:Python基础(4)

import os [[email protected] ~]# python3 Python 3.5.1 (default, May 12 2016, 00:36:44) [GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux Type "help", "copyright", "credits" or "license" for more information. >>&

Python之路【第一篇】:Python基础(3)

import getpass [[email protected] ~]# cat test_getpass.py import getpass username = input("username:") password = getpass.getpass("password:") print(username,password) [[email protected] ~]# python3 test_getpass.py username:jam passwor

11、python基础学习-while循环

1.while 条件 : print(“ ”) 2.输出1-10:#!/usr/bin/env python num = 1while num <= 10 : print(num) num += 1 3.输出1-10之间的偶数:#!/usr/bin/env python num = 1while num <= 10 : if num % 2 == 0 : print(num) num += 1 4.猜年龄:#!/usr/bin/env python age = 36flag = Truewhi

深入解答11道Python基础面试题

1. Python的参数传递是值传递还是引 举例说明Python函数参数传递的几种形式,并说明函数传参是值传递还是引用传递 一.位置参数 调用函数时根据函数定义的参数位置来传递参数.例子: def print_hello(name, sex): sex_dict = {1: u'先生', 2: u'女士'} print ('hello %s %s, welcome to python world!' %(name, sex_dict.get(sex, u'先生'))) # 两个参数的顺序必须一一

Python之路【第一篇】:Python基础(5)

python 3.2.3及以下版本没有自带tab补全,python 3.5.1自带tab补全模块. #!/usr/bin/env python # python startup file import sys import readline import rlcompleter import atexit import os # tab completion readline.parse_and_bind('tab: complete') # history file histfile = os

Python之路【第一篇】:Python基础(2)

input和 raw_input python 3.5里面 input输入不论输入的是数字还是字符串, 都被默认为是字符串,如果要输入数字需要将字符串转换成数字,使用int方法. python 2.7  里面用input输入字符串默认认为输入的是变量,然后会去找这个变量,找不到然后会报错,输入数字python认为输入的就是数字会存下来,所以不会报错. 如果输入的是字符串就需要用raw_input而不是input,仅在2.7里面出现. 在文本中使用占位符,格式:在文本中插入%s    %d   

Python之路【第一篇】:Python基础(6)

条件判断if else语法规则 如果 if 语句判断为 True,就会执行它下面的子代码(下层缩进代码 ).. 否则的话,就执行 el se 下面的子代码. 当然后面的 el se 也不是必须要加的,如果不加 el se 的话,那 if 条件判断为 Fa l se 的话,那它就什么也不做. and与or语法规则 看这里写的if user_input == valid_user and passwd == valid_passwd:的意思就是让if 条件必须同时满足2个条件了,当然你还可以 再后面