美文网首页python编程
python基础--基本数据类型和操作

python基础--基本数据类型和操作

作者: Cassie测试路 | 来源:发表于2017-12-01 17:38 被阅读0次

string类型

a = "WAbc"

# 字符串小写、大写、首字母大写,这些函数都不会改变原字符串
a.lower()           # wabc
a.upper()          # WABC
a.capitalize()    # Wabc

list类型

  1. 遍历数组元素
# 直接遍历数组元素
a = [1,2,3,4,5]
for elem in a:
    print(a)   # 输出数组元素,1   2   3    4   5

# 根据下标遍历数组元素
a = [1,4, 3, 5, 2]
for i in range(len(a)):
    print(a[i])

# 把list变成类似于java的下标-元素遍历,使用`enumerate()`
a = enumerate(["A", "B", "C"])
b = dict(a)         # {0: 'A', 1: 'B', 2: 'C'}
for k in b:
    print(b[k])      # "A"     "B"    "C"
  1. 数组元素截取
  • a[start, end],数组元素截取包括start下标不包括end下标
a = [1,2,3,4,5]

a[0]       #1
a[-1]      # 5
a[0:1]    # 1
a[0:2]    # [1, 2]
  1. 对数组元素进行排序
  • list.sort(key=None, reverse=False),会改变原数组
  • sorted(iterable, key=None, reverse=False),不会改变原数组,并且对dict和tuple都有效。key参数的值为一个函数,此函数只有一个参数且返回一个值用来进行比较,此函数将在每个元素比较前被调用。
a = [1, 2, 4, 3]

# 数组元素按照从小到大的顺序
a.sort()       # 返回:[1, 2, 3, 4]
print(a)       # 返回:[1, 2, 3, 4],a.sort()会改变原数组

3.1 一个数组元素,按照组内数组元素的重复次数,由高到低排序

  • list.count(elem),元素出现的次数
# 例如:[1, 2, 1, 2, 5, 3, 3, 1, 1, 2]--->[1, 2, 3, 5]
a = [1, 2, 1, 2, 5, 3, 3, 1, 1, 2]
b = set(a)
result = {}
for i in a:    # 这里直接对原数组进行循环,最终也没有重复输出数据,是因为result是dict类型他的值是覆盖的
    result[i] = a.count(i)   # result结果中相同元素重复的次数不会多次输出,是因为dict类型他的key值是覆盖的

for i in b:
    result[i] = a.count(i)

print(result)       # {1: 4, 2: 3, 5: 1, 3: 2}

# 对于结果按照value值排序

3.2 一个数组,按照元素字母从小到大排序,忽略大小写

a = ["andy",  "Bob", "Anna", "bob"]

sorted(a)                  # ['Anna', 'Bob', 'andy', 'bob']
sorted(a, key=lambda x: x.lower())      # ['andy', 'Anna', 'Bob', 'bob']
  • 对数组元素进行去重
#方法1,使用set()函数
a = [1, 2, 3, 5, 6, 7, 1, 2, 3]
b = set(a)     # {1, 2, 3, 5, 6, 7} 
list(b)           # [1, 2, 3, 5, 6, 7]

# 方法2,定义一个数组
c = []
for i in a:
    if i not in c:
        c.append(i)
print(c)

dict字典类型

  • 遍历字典的key值:
a = {'a': '1', 'b': '2', 'c': '3'}

for key in a:
    print(key)      # 输出: a     b    c


a.keys()           # dict_keys(['a', 'b', 'c'])
for key in a.keys():
    print(key)      # 同上,输出: a     b    c
  • 遍历字典的key,value值:
a.items()        # dict_items([('a', '1'), ('b', '2'), ('c', '3')])
for key,value in a.items():
       print(key+':'+value)

for (key,value) in a.items():
    print(key+':'+value)     #  效果同上

for kv in a.items():
    print(kv)
打印结果:
('a', '1')
('b', '2')
  • 遍历字典的value值:
a.values()        # dict_values(['1', '2', '3'])
for value in a.values():
    print(value)
  • 字典按照key或者value值排序:
  • sorted函数中的可迭代对象不要用字典d,那样只能迭代出的字典d的键。要用d.items()才可迭代出字典的键值对
a = {"b": 1, "a": 2}
# dict按照key值排序
sorted(a.items(), key=lambda x: x[0])      # [('a', 2), ('b', 1)]

# dict按照value值排序
sorted(a.items(), key=lambda x: x[1])      # [('b', 1), ('a', 2)]

相关文章

网友评论

    本文标题:python基础--基本数据类型和操作

    本文链接:https://www.haomeiwen.com/subject/bivwbxtx.html