模块

Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相应的Python库支持,以后的课程中会深入讲解常用到的各种库,现在,我们先来象征性的学2个简单的。

sys

#!/usr/bin/env python
#-*- coding: utf-8 -*-
import sys
print(sys.argv) #输出
$ python test.py hello world
["test.py","hello","world"] #把执行脚本时传递的参数获取到了

os

#!/usr/bin/env python
# -*- coding: utf-8 -*- import os
os.system("df -h") #调用系统命令

结合起来

import os,sys

os.system(''.join(sys.argv[1:]))  #把用户的输入的参数当作一条命令交给os.system来执行

  


数据类型初识

1.数字

  2 是一个整数的例子。
  长整数 不过是大一些的整数。
  3.23和52.3E-4是浮点数的例子。E标记表示10的幂。在这里,52.3E-4表示52.3 * 10-4。
  (-5+4j)和(2.3-4.6j)是复数的例子,其中-5,4为实数,j为虚数,数学中表示复数是什么?。

int(整型)

  在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
  在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
long(长整型)
  跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。
  注意,自从Python2.2起,如果整数发生溢出,Python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母L也不会导致严重后果了。
float(浮点型)
  浮点数用来处理实数,即带有小数的数字。类似于C语言中的double类型,占8个字节(64位),其中52位表示底,11位表示指数,剩下的一位表示符号。
complex(复数)
  复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。
注:Python中存在小数字池:-5 ~ 257
 
2.布尔值
  真或假
  1 或 0
 
3.字符串

  "Hello world"

字符串格式化输出

name = "King golden horn"

print("I am %s" % name)

#输出 I am King golden horn

4.列表

创建列表

 name = ["a","b","c","d","a","f"]

name = list(["a","b","c","d","a","f"])
name2 = ["","","",""]

增删改查

 name.append("g")  #从最后面插入
name.insert(1,"h")  #选择插入的位置,1代表下标
name.pop(3) #删除d pop是默认删除最后一个
name.remove("a")  #删除
del name[1]     #删除 name[0] = 'i'  #修改,把a改成i
print(name[name.index("b")]) #查找b
print(name.count("a")) #统计有多少个a name.clear()
print(name) #清空
name.reverse()
print(name)  #反转
name.sort
print(name)  #排序 特殊符号-->数字-->大写字母-->小写字母
name.extend(name2)
print(name)#合并 结果是 ['a', 'b', 'c', 'd', 'e', 'f', '1', '2', '3', '4'] name3 = name.copy() #浅复制 只复制列表的第一层
import copy    #引入模块
name = copy.deepcopy #深复制 完全复制一份

切片取

print(name[1])     #这就把b取出来了,因为b的下标是1,所以 name[1]  写1
print(name[0:2]) #切片 #这就把a,b取出来了,2 的下标是c,因为不包括2所以把a,b取出来了
print(name[-1]) #这就把f取出来了,因为 -1 代表最后一个
print(name[:2]) #name[:2]=name[0:2] 如果前面是0可以省略
print(name[0:-1:2]) #隔一个取一个值

元组

元组跟列表差不多,也是存一组数据,只不过他一单创建,便不能在修改,所以又叫做只读列表

语法:

name = ("a","b","c")


字符串常用操作

 name = "my \tname is {name} and i am {year} old"
print(name.capitalize()) 输出>>>Alex #首字母大写
print(name.count("a")) 输出>>>2 #统计有几个a
print(name.center(50,"-")) #打印50个字符如果不够用-补齐把列表放中间
print(name.endswith("ex")) 输出>>>True #以什么结尾
print(name.expandtabs(tabsize=30)) #吧tab键换成30个空格
print(name.find("y")) 输出>>>1 #查找y的下标
print(name.format(name=alex,year=100))
print(name.format_mat( {"name":alex,"yesr"}))
print(name.isalnum()) #判断是不是阿拉伯数字加阿拉伯字符
print(name.isblpha()) #判断是不是纯英文字符
print(name.isdecimal()) #判断是不是十进制
print(name.isdigit()) #判断是不是一个整数
print(name.isidentifier()) #判断是不是一个合法的标识符
print('ab'.islower()) #判断是不是小写
print(''.isnumeric()) #是不是只有数字在里面
print(' '.isspace()) #判断是不是空格
print('My Name Is'.istitle()) #判断首字母是不是大写
print('My Name Is'.isprintable())#tty file,drive file
print('My Name Is'.isupper()) #判断是不是全是大写
print('+'.join(['','',''])) 输出>>>1+2+3
print(name.1just(50,'*')) #保证长度50,不够的用*在后面补齐
print(name.rjust(50,'-')) #保证长度50,不够的用-在前面面补齐
print('Alex'.lower()) #把大写变成小写
print('Alex'.upper()) #把小写变大写
print('alex'.lstrip()) #lstrip去掉左边的空格回车 strip去掉两边的空格回车
print('alex'.rstrip()) #rstrip去掉右边的空格回车
p = str.maketrans('abcdef','') #2.2版本
print('alex li'.translate(p)) 输出>>> 115 li
print('alex li'.replace('l','L',1))#把l替换成大写 1是只替换一个
print('alex'.rfind('e')) #从左往走找到最右边的值返回下标
print('alex li'.split()) #按照空格分成列表 输出>>> ['alex','li']
print('1+2\n3+4'.splitlines()) #按换行来分
print('Alex Li'.swapcase()) #大写换下写,小写换大写
print('lex li'.title) 输出>>>Lex Li
print('lex li'.zfill(50)) #不够的用0填充
37 print('alex'.strip()) #strip去掉两边的空格回车


字典
字典一种key-value的数据类型,使用就像我们上学用的字典,通过笔画,字母来查找对应页的详细内容。
语法:
 info= {
'sut1':'',
'sut2':'',
'sut3':'',
}
字典的特性:
dict 是无序的
key 必须是唯一的,so天生去重
 print(info.get('sut1')) #查找
print(info['sut1']) 输出>>>1
info['sut1'] = '' #修改
info['sut4'] = '' #如果存在就修改,不存在就创建
print(info)
#del
del info['sut1']
info.pop('sut1')
info.popitem() #随机删
print(info) print('sut2' in info) #判断sut2在不在info里 info.value #打印所有值
info.key #打印说有key info['大陆'][''][1] = 'abcde'
info.setdefault('大陆',{'www.baidu.com':[1,2]})
#去字典里取大陆这个值,如果能取到返回和这个值,如果取不到就创建一个新的 info.items #items把字典改成列表
c = info.fromkeys([6,7,8],'test') #创建一个字典

Python 模块,数据类型,元组的更多相关文章

  1. python基础数据类型--元组(tuple)

    python基础数据类型--元组(tuple) 一.元组的定义和特性 定义:与列表相似,只不过就是将[ ] 改成 ( ) 特性:1.可以存放多个值 2.不可变 3.按照从左到右的顺序定义元组元素,下标 ...

  2. Python基本数据类型——元组和集合

    元组 tuple tuple和list非常类似,但是tuple一旦初始化就不能修改.元组采用圆括号表示. 例如: >>> tuple = (1,2,3) >>> t ...

  3. python基本数据类型——元组

    元组 元组是一种不可变的序列,创建后不可以修改元素值 # 创建只包含一个元素的元组 >>a = (3,) >>print(a) (3,) #使用 tuple() 转换为元组 & ...

  4. Python特色数据类型--元组

    元组是不可改变的,创建后就不能做任何修改操作了 1.元组用()表示

  5. Python基本数据类型--列表、元组、字典、集合

    一.Python基本数据类型--列表(List) 1.定义:[ ]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素. 2.列表的创建: # 方式一 list1 = ['name','ag ...

  6. Python基础数据类型-列表(list)和元组(tuple)和集合(set)

    Python基础数据类型-列表(list)和元组(tuple)和集合(set) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的 ...

  7. Python进阶(十)----软件开发规范, time模块, datatime模块,random模块,collection模块(python额外数据类型)

    Python进阶(十)----软件开发规范, time模块, datatime模块,random模块,collection模块(python额外数据类型) 一丶软件开发规范 六个目录: #### 对某 ...

  8. python基本数据类型之列表和元组

    python基本数据类型之列表与元组 python中list与tuple都是可以遍历类型.不同的是,list是可以修改的,而元组属于不可变类型,不能修改. 列表和元组中的元素可以是任意类型,并且同一个 ...

  9. Python的数据类型3元组,集合和字典

    首先要讲到的就是元组 元组其实拥有列表的一些特性,可以存储不同类型的值,但在某些方面元组又比不上列表 定义一个元组,你可以不用加‘ [ ] ’,你只需用逗号隔开即可 例如 1 2 3 4 5 6 7 ...

  10. Python - 基本数据类型及其常用的方法之元组

    元组 特点:一级元素无法被修改,且不能被增加或者删除. 基本操作: tu = (11, 22, ["aiden", 33, ("qwe", 11)], 77) ...

随机推荐

  1. POJ 1474 Video Surveillance(半平面交)

    题目链接 2Y,模版抄错了一点. #include <cstdio> #include <cstring> #include <string> #include & ...

  2. 创建需要计时器的windows service

    1.在VS中建立windows service后,应该添加一个安装程序. 2.在默认的Service1.cs设计界面右键,添加安装程序,生成ProjectInstaller.包含两个类serviceP ...

  3. 再说virtual

    看了对Anders Hejlsberg的采访, 1)C#中函数默认是非virtual的设计因为:在java中,一个方法默认是虚拟化的,只有对一个方法必须声明final关键字,这样这个方法才是非虚的,无 ...

  4. 《少有人走的路:心智成熟的旅程》--[美]M·斯科特·派克

    <少有人走的路>,美国作家M·斯科特·派克所著 下面是我的书摘: * 归根到底,它告诉我们怎样找到真正的自我. * 人可以拒绝任何东西,但绝对不可以决绝成熟.决绝成熟,实际上就是在规避问题 ...

  5. iOS 三种收起键盘的方法

    - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typica ...

  6. Node.js 手册查询-4-Express 方法

    express 标签(空格分隔): node.js express [TOC] 安装: 新版本中命令行工具分家了 npm install -g express //安装 express 然后 npm ...

  7. 异常 java.util.regex.PatternSyntaxException:

    可变参数是在JDK1.5之后出来的一个行特性,也是一个比较好用的东西 想起好多jfinal还有其他框架的查询方法就有好多用到了可变参数,自己也写了个这样的方法 public class Test{   ...

  8. 安装wampserver之后,浏览器中输入localhost页面显示IIS7解决办法

    1.wampserver图标为绿色才为正常启动,如果为橘色说明端口(默认为80)被占用:可以点击图标,然后点Apache->Service->测试80端口,来验证端口是否被占用. 如果占用 ...

  9. 2016HUAS暑假集训训练2 F - A Simple Problem with Integers

    Description 给出了一个序列,你需要处理如下两种询问. "C a b c"表示给[a, b]区间中的值全部增加c (-10000 ≤ c ≤ 10000). " ...

  10. 分布式搜索ElasticSearch单机与服务器环境搭建

    从上方插件官网中下载适合的dist包,然后解压.进入bin目录,可以看到一堆sh脚本.在bin目录下创建一个test.sh: bin=/home/csonezp/Dev/elasticsearch-j ...