python基本数据类型

单行注释
以#开头

多行注释
用三引号包围

 

python输入
input()
input()接受表达式输入,并把表达式的结果赋值给等号左边的变量

>>> a = input()
123
>>> a
123
>>> type(a)
<type 'int'>
>>> a = input()
abc
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 1, in <module>
NameError: name 'abc' is not defined
>>> a = input()
"abc"
>>> a
'abc'
>>> type(a)
<type 'str'>
>>> a = input()
1+3
>>> a
4
>>> a = input()
"abc"+"def"
>>> a
'abcdef'
>>> value = 100
>>> a = input()
value
>>> a
100
View Code

 

python输出
普通的输出
print()
格式化输出

常用的占位符格式符号

格式符号转换
%c 字符
%s 通过str() 字符串转换来格式化
%i 有符号十进制整数
%d 有符号十进制整数
%u 无符号十进制整数
%o 八进制整数
%x 十六进制整数(小写字母)
%X 十六进制整数(大写字母)
%e 索引符号(小写'e')
%E 索引符号(大写“E”)
%f 浮点实数
%g %f和%e 的简写
%G %f和%E的简写

 

print('Hello,%s' % 'Python')
print('Hello,%d%s%.2f' % (666, 'Python', 9.99)) # 打印:Hello,666Python10.00
print('{k} is {v}'.format(k='python', v='easy'))  # 通过关键字
print('{0} is {1}'.format('python', 'easy'))      # 通过关键字
print("1234567890-------")   # 会在一行显示
print("1234567890\n-------") # 一行显示1234567890,另外一行显示-------
View Code

 

 常用数据类型转换

函数说明
int(x [,base ]) 将x转换为一个整数
long(x [,base ])

将x转换为一个长整数

long() Python2有长整型,python3 长整型long和整型int 弄一起了,只有int

float(x ) 将x转换到一个浮点数
complex(real [,imag ]) 创建一个复数
str(x ) 将对象 x 转换为字符串
repr(x ) 将对象 x 转换为表达式字符串
eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s ) 将序列 s 转换为一个元组
list(s ) 将序列 s 转换为一个列表
chr(x ) 将一个整数转换为一个字符
unichr(x ) 将一个整数转换为Unicode字符
ord(x ) 将一个字符转换为它的整数值
hex(x ) 将一个整数转换为一个十六进制字符串
oct(x ) 将一个整数转换为一个八进制字符串

 

 

基本数据类型:

数字

字符串

布尔值

列表

元祖

字典

所有对象所具备的功能都保存在相应的类中。

 

 

 

 

 

查看对象的类,或对象所具备的功能。

1、通过type()查看

temp = "alex"
t = type(temp)

 

2、整体查看dir()快速列举

temp = "alex"
t = type(temp)
print(dir(t))

 

3、查看某类型的功能

temp = "alex"
t = type(temp)
help(type(t))

4、鼠标点击

temp = "alex"

temp.upper()

鼠标放在upper()上,Ctr+左键,自动定位到upper功能

 

 

基本数据类型的常用功能:

整型int

n1 = 123
n2 = 456
print(n1+n2) #实际是调用了n1的方法
print(n1.__add__(n2))

 

a1 = "alex"
ret = a1.capitalize()
print(ret)


a1 = "alex"
ret = a1.center(20,'*')
print(ret)
结果:********alex********
a1 = "alex is alph"
ret = a1.count("a")
print(ret)

a1 = "alex is alph"
ret = a1.count("al",0,10) #从0到10
print(ret)

temp = "hello"
print(temp.endswith('e',0,2)) 结果:True


content = "hello\t999"
print(content)
print(content.expandtabs())
print(content.expandtabs(20))


s = "alex hello"
print(s.find("ex"))

s = "hello {0}, age{1}"
print(s)
new1 = s.format('alex',19)
print(new1)

Python range()函数

for i in range(10):
    print(i)
    
0
1
2
3
4
5
6
7
8
9
View Code
new_list = ['this','is','a','book']

for i in range(len(new_list)):
    print(i,new_list[i])
    
0 this
1 is
2 a
3 book
View Code

 

new_list = range(10)

new_list
Out[41]: range(0, 10)

type(new_list)
Out[42]: range
View Code

 

 

list 中 append()和extend()用法

 

mylist = [1,2,'abc','nice']

mylist.extend(['day','night'])

mylist
Out[68]: [1, 2, 'abc', 'nice', 'day', 'night']

mylist.extend([120,119])

mylist
Out[71]: [1, 2, 'abc', 'nice', 'day', 'night', 120, 119]
View Code

 

list

list是一种有序的集合,可以随时添加和删除其中的元素,是python内置对象。

 

 

 初始化、增、删、改、查、遍历

 

类型

操作方法

样例

定义/赋值

data = []

data = list()

list_date = [20180101, 20180102, 20180103]

获取长度

len

len(list_date) = 3

访问元素

按位置索引

用中括号 []

list_date[0] = 20180101

list_date[-1] = 20180103 list_date[-2] = 20180102

超出元素范围list_date[3] list_date[-4] ,抛出异常 IndexError: list index out of range

增加元素

append

insert

list_date.append(20180104)

list_date.insert(1, 20180106)

修改元素

按位置索引

用中括号 []

list_date[0]  = 20180109

删除元素

pop

pop(i)

pop() 删除链表末尾的数据

pop(i) 删除第i个位置的数据

 

  

#list中的元素可以是不同类型的值
data = [ 'string', 1000, True ]

# list元素可以是另一个list
data2 = [ 'china', 'java', data ]


# 循环遍历list里面的元素
for elem in data:
    print(elem)


# tuple 不能修改的list
data_tuple = ( 'string', 1000, True )
View Code

 

一、列表

1.什么是列表

  列表是一个可变的数据类型。

  列表由方括号[ ]来表示,每一个元素用逗号隔开,列表什么都能装。能装对象的对象

  列表可以装大量数据

2.列表的索引和切片

  列表和字符串一样,也有切片和索引,只不过切出来的内容是列表。

  索引下表从0开始

  [起始位置:结束位置:步长]

3.列表的增删改查

 

        1. 增加
            append() 追加
            insert(index, 元素) 在index位置添加元素
            extend() 迭代添加
        2. 删除
            pop(index) 按照位置删除元素
            remove(元素) 直接删除元素
            del 切片.
            clear() 清空列表
        3. 修改
            索引修改
            切片修改
        4. 查询
            for el in list:
                el
        5. 常用操作
            1. sort() 排序 reverse=True降序
            2. reverse() 翻转
            3. len() 求长度

4.列表的嵌套

  降维,一层一层看

5.元组

  只读列表,只能看,啥也不能干

  使用()表示元组

  如果元组只有一个元素(元素,)

  空元祖 tuple()

  元组是个可迭代对象,可以使用for 循环

6.range

  range(n) 从0到n-1

  range(m,n) 从m到n-1

  range(m,n.q) 从m到n-1,每q个取一个,综上就是切片

7.**使用range和for循环来获取列表中的索引

for i in range(len(列表)):
            i 索引
            列表[i] 元素

 

 

 

 

list与tuple的区别

类型

List对象

Tuple对象

赋值

data = [1,2,3]

data = (1,2,3)

获取长度

len

len

访问元素

按位置索引

用中括号 []

按位置索引

用中括号 []

增加元素

append

insert

不可以

修改元素

按位置索引

用中括号 []

不可以

 

删除元素

pop

pop(i)

不可以

 

 

字典对象dict

字典对象dict使用键-值(key-value)存储,具有极快的查找速度,是python内置对象。

 

 

 

初始化、增、删、改、查、遍历

类型

操作方法

样例

定义/赋值

data = { }

data = dict()

dict_date = {‘2016': 100, ‘2017': 75, ‘2018': 200}

获取长度

len

len(list_date) = 3

访问元素

按key索引

用中括号 []

 

 

get方法

dict_date[‘2016’]

dict_date[‘2015’]

如果key不存在,则会报错KeyError: ‘2015‘

 

dict_date.get(key, default)

如果key不存在,返回default。没有default返回None

增加/修改元素

按key索引

用中括号 []

dict_date[‘2019’] = 100  // 增加元素

dict_date[‘2017’] = 80    // 修改元素值  

是否存在key

in 操作符

‘2015’ in dict_date 

返回False

删除元素

pop(key)

pop(key) 删除键值为key的元素

# dict data for 2017 gdp amount
gdp_2017 = {
    "primary industry"   : 65468,
    "secondary industry" : 334623,
    "tertiary industry"  : 427032
}

# 分别取出 gdp类别列表 和 gdp值列表
labels = gdp_2017.keys()
values = gdp_2017.values()

# 遍历dict
for k, v in gdp_2017.items():
    print(k, v)
View Code
# 集合Set =没有值的字典dict

# 定义集合
set_data = set()

# 增加元素
set_data.add('Google')
set_data.add('Micorosoft')
set_data.add('Facebook')
set_data.add('Alibaba')
set_data.add('Baidu')

# 删除元素
set_data.remove('Baidu')

# 遍历set元素
for key in set_data:
    print(key)
View Code

 

时间对象datetime

# 导入datetime库
from datetime import datetime

# str转换为datetime
datetime.strptime('2018-1-1', '%Y-%m-%d')

# datetime转换为str
now = datetime.now()
print(now.strftime('%Y-%m-%d %H:%M:%S'))

# %y 两位数的年份表示(00-99)
# %Y 四位数的年份表示(000-9999)
# %m 月份(01-12)
# %d 月内中的一天(0-31)
# %H 24小时制小时数(0-23)
# %I 12小时制小时数(01-12)
# %M 分钟数(00=59)
# %S 秒(00-59)
# %f 毫秒(0,999999)
View Code

 

posted on 2017-04-03 18:34  trp  阅读(240)  评论(0编辑  收藏  举报

导航