Python的数据类型,字符串,列表和元组的基本操作

原创
2018/03/29 22:30
阅读数 165

2.1 Python的运算符

1. 数字运算符:

+ - * / %

2. 关系运算符:

a == b, a > b, a < b, a != b

3. 赋值运算符:

 a = b   # 把b的值赋予a
 a += b  # 即 a = a + b
 a -= b  # 即 a = a - b
 a *= b  # 即 a = a * b
 a /= b  # 即 a = a / b

  4. 逻辑运算符: and,  or , not多用于判断条件,如:

    if a < 10 and a > 5

    if a < 10 or b > 10

2.2 数据类型

1. 整型 int,如a = 10

2. 布尔型:True False

>=1 True
<0 False

3. 浮点型float,即含小数的数字

>>> a = 3.1415926
>>> m = round(a,3)
>>> print(m)
3.142

4. 字符串str,可以用‘aasdf’ ,"adassdf",'''adfadsf'''  这几种方法都可以定义字符串,,三引号还可以用来注释

>>> string = 'I love Python!'
>>> print(type(string))
<class 'str'>
下标,从0开始,[0]代表第一个
>>> string = 'abcdefghigh'
>>> string[0]
'a'
----------------------------------

find()方法,返回的是字符串所在位置的索引,如果找不到就返回-1如:
>>> string = 'abcdefghgh'
>>> string.find('gh')
6
>>> string.find('ghi')
-1

----------------------------------

replace()方法,str.replace('要被替换的字符串',‘替换的内容’),如
>>> string.replace('gh','GH')
'abcdefGHGH'

-----------------------------------

split()方法,分隔,split('以什么为分隔符'),返回一个列表,如
>>> string = 'abc,def,ghi'
>>> string.split(',')
['abc', 'def', 'ghi']

-----------------------------------
strip()方法,默认是删除字符串左右两边的空字符,类似还有rstrip()删除右边的空格,lstrip()删除左边的空格
>>> string = '   I love aming python    '
>>> string.strip()
'I love aming python'
>>> string.rstrip()
'   I love aming python'
>>> string.lstrip()
'I love aming python    '
>>> string1 = '########I love aming python!#########'
>>> string1.strip('#')
'I love aming python!'

------------------------------------

join()方法,join后面要跟可迭代对象,一般为list
>>> s1 = '-'
>>> list1 = ['2018','03','29']
>>> s1.join(list1)
'2018-03-29'

------------------------------------
startswith()和endswith(),返回布尔值
>>> string = 'I love aming Python'
>>> string.startswith('I')
True
>>> string.endswith('no')
False

 

2.3 list常用操作

序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字,它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

append()方法,在列表最后增加元素
>>> l = [1,2,3,4,5]
>>> l.append(6)
>>> l
[1, 2, 3, 4, 5, 6]

pop()方法,默认删除列表最后一个元素
>>> l.pop()
6
>>> l
[1, 2, 3, 4, 5]
>>> l.pop(1)     # 返回删除的元素
2
>>> l
[1, 3, 4, 5]

remove()方法,默认删除最后一个元素,没有返回值
>>> l
[1, 3, 4, 5]
>>> l.remove(3)
>>> l
[1, 4, 5]

-----------------------------------------
sort()排序,reverse()反向排序,字符串在python3不能比较排序,没有返回值
>>> l = list(range(10))
>>> l
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> l.sort()
>>> l
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> l.reverse()
>>> l
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

insert()在指定位置插入,insert(index,value)
>>> l
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
>>> l.insert(1,10)
>>> l
[9, 10, 8, 7, 6, 5, 4, 3, 2, 1, 0]

 

2.4 简易计算器

#!/usr/bin/python3
# coding:utf-8

def add(string):
    sum  = 0
    nums = string.split('+')
    for num in nums:
        sum += int(num.strip())
    print('{}={}'.format(string,sum))

def minus(string):
    nums  = string.split('-')
    total = int(nums[0].strip())
    nums.pop(0)
    for num in nums:
        total -= int(num.strip())
    print('{}={}'.format(string,total))


def multi(string):
    nums = string.split('*')
    total = int(nums[0].strip())
    nums.pop(0)
    for num in nums:
        total *= int(num.strip())
    print('{}={}'.format(string,total))


def devide(string):
    nums = string.split('/')
    total = int(nums[0].strip())
    nums.pop(0)
    for num in nums:
        total /= int(num.strip())
    total = round(total,2)
    print('{}={}'.format(string,total))

if __name__ == '__main__':
    print('#'*31)
    print('#'*5 + 'Welcome to simple cal' + '#'*5)
    print('#'*31)
    print('使用方法:')
    print('1 + 2 + 3 + 4...')
    print('1 - 2 - 3 - 4...')
    print('1 * 2 * 3 * 4...')
    print('1 / 2 / 3 / 4...')
    while True:
        method = input("请选择方法(+,-,*,/):")
        signs = ['+','-','*','/']
        if method not in signs:
            print("运算符输入错误,请重新输入!")
        elif method == '+':
            string = input("请输入运算表达式:")
            add(string)
            break
        elif method == '-':
            string = input("请输入运算表达式:")
            minus(string)
            break
        elif method == '*':
            string = input("请输入运算表达式:")
            multi(string)
            break
        elif method == '/':
            string = input("请输入运算表达式:")
            devide(string)
            break

 

2.5 tuple 元组操作

Python 的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

创建元组
>>> tup1 = ('hi','hello','aloha')
>>> print(tup1)
('hi', 'hello', 'aloha')
>>> print(type(tup1))
<class 'tuple'>

创建空元组,用小括号就可以
>>> tup2=()
>>> print(type(tup2))
<class 'tuple'>

如果只有一个元素,不能写成(5),还要加逗号
>>> tup3 = (2)
>>> tup4 = (2,)
>>> print(type(tup3),type(tup4))
<class 'int'> <class 'tuple'>

-----------------------------------------
count()方法,统计元素在元组中出现的次数
>>> tup1 = (1,2,3,4,5,4,3,2,6,2)
>>> tup1.count(2)
3

index()方法,寻找元素在元组中的索引位置,如果所查元素在元组中出现多次,则显示第一个出现的索引
>>> tup1
(1, 2, 3, 4, 5, 4, 3, 2, 6, 2)
>>> tup1.index(3)
2
展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部