首页 > 代码库 > Python第三天

Python第三天

接python第二天:

一:两道编程小食

     1、计算‘5+9’

#计算‘5+9’
value=http://www.mamicode.com/5+9
v2,v3=value.split(+)
print(v2)
print(v3)
v2=int(v2)
v3=int(v3)
print(v2+v3)

      2、计算用户输入的内容中有几个小数?几个字母?

 #计算用户输入的内容中有几个小数?几个字母?
c1 = 0
c2 = 0
val = input(>>>)
for item in val:
     # 如果item是数字:
    c1 += 1
    # 如果item是字母:
    c2 += 1
print(c1,c2)

二:列表  list

技术分享
li = [1, 12, 7, age, [gh, 规划], alex, True]
# list   类,列表
# ‘集合’,内部可以放任何东西
# 通过索引、切片取值
print(li[3])
print(li[2:-1])

# for循环 ;while循环
# 列表元素可以被修改
li = [1, 12, 7, age, [gh, 规划], alex, True]
# 修改
li[1] = 120
print(li)
li[1:3]=(120,90)
print(li)

# 删除1
del li[1]
print(li)

# in 操作
v = 120 in li
print(li)

# 列表中的元素是以,为分割的
li = [1, 12, 7, age, [gh, 规划], alex, True]
v = li[4][0]
print(v)

# 字符串转换成列表,其内部使用for循环
s = dfghjk,
li = list(s)
print(li)

# 列表转换成字符串
r = str(li)
print(r)
# 既有数字又有字符串,需要自己写for循环
li=[11,22,33,456,fgh]
s = ‘‘
for i in li:
    s = s + str(i)
print(s)

# 列表中的元素只有字符串,直接使用字符串join方法
li = [dfgh,1234]
v = ‘‘.join(li)
print(v)

# 原来的值最后追加
# li = [11,22,‘rty‘,‘23‘]
li.append(5)
li.append(alex)
li.append([2345,dfg])
print(li)

# 清空列表
li.clear()
print(li)

# 拷贝,浅拷贝
v = li.copy()
print(v)

# 计算元素出现的次数
v = li.count(22)
print(v)

# 扩展原列表,使用for循环,参数:可迭代对象
li = [11,22,rty,23]
li.extend([ghj,567])
print(li)

# 根据值获取当前值索引位置(左边优先)
v = li.index(22)
print(v)

# 在指定位置插入
li.insert(0,99)
print(li)

# pop默认删除最后一个值,并获取删除值;参数为指定索引值
v = li.pop()
print(li)
print(v)


# 删除列表中的指定值,左边优先
li.remove(22)
print(li)
# PS:删除:pop   remove   del li[o]  del li[2:9]  clear

# 将当前列表翻转
li.reverse()
print(li)

# 排序
li = [11,22,1,89]
li.sort()
li.sort(reverse=True)
print(li)
list

三:元祖    tuple

      写元祖时,推荐后面加“,”

  tu = (111,alex,(22,77),)

 

   

技术分享
tu = (111,alex,(22,77),)
# 索引
v = tu[2]
print(v)
# 切片
v = tu[0:2]
print(v)

# del会报错

# 可以for循环,可迭代对象
for item in tu:
    print(item)

#列表元祖转换
s = sdfghjk
li = [ghj, 3456]
tu = (gh,567,)
v = tuple(s)
print(v)
v1 = tuple(li)
print(v1)
v2 =  list(tu)
print(v2)

# 不能有数字
v = _.join(tu)
print(v)

tu = (34, alex, (1, 4), [(33, 77)], True, 78,)
# 元祖,是有序
v = tu[3][0][0]
print(v)

# 元祖的一级元素不可修改、删除、增加;当它里面嵌套列表或其他值时可被修改
tu[3][0] = 567
print(tu)
tuple

  方法记住两个:

  •      count  获取指定元素在元祖中的次数
  •      index  获取指定元素的索引号

四:字典  dict

技术分享
# 字典的valu值是任意值
# 列表、字典不能作为字典的Key,但是注意布尔值和数字(1,0)不能重复
# info = {
#     ‘k1‘: ‘v1‘,  #键值对
#     ‘k2‘: ‘v2‘
# }
info = {
     k1:18,
     2:True,
     k3:[
         11,
         22,
         33,
         {
             kk1:vv1,
             kk2:vv2,
            kk3:(11,22),
         }
     ],
     k4:(11,22,3,4)
 }
print(info)

# 字典无序

# 索引方法找到指定元素,因为无序所以不能切片查找
v = info[2]
print(v)
v = info[k3][3][kk3][0]
print(v)

# 支持del删除
del info[k1]
print(info)

# for 循环,默认循环输出keys.info.keys;info.values;info.items
for item in info:
     print(item)
 for item in info.values():
     print(item)
 for k,v in info.items():
     print(k,v)

# dict
dic = {
    k1:v1
}
#根据序列,创建字典,并指定统一的值
v = dict.fromkeys([k1,123,67],346)
print(v)

#根据Key获取值,key不存在时,可以指定默认值(None)
v = dic.get(k1,567)
print(v)

#删除并获取值(指定删除)
v = dic.pop(k1)
print(dic,v)
#删除并获取值(随机删除)
k,v = dic.popitem()
print(dic,k,v)

#设置值,已经存在:不设置,获取当前key的值;不存在,设置,获取当前key对应的值
v = dic.setdefault(k2,3456)
print(dic,v)

#更新,两种方式
dic.update({k1:678,k3:678})
print(dic)
dic.update(k1=123,k3=ghj,k5=678)
print(dic)
dict

五:整理(必会的)

  1.      数字   int ()
  2.      字符串    replace  find   join  strip  startswith  split  upper  lower  format
  3.      列表    append  extend  insert  

                       数字不能进行for循环,所以不能转换成列表

     4.       元祖   一级元素不能修改、增加、删除

     5.       字典   get  updata  keys  values  items  索引   for循环   in操作

     6.       布尔值   0/1

             False ==<<  None   “ ”   ()   [ ]  { }

 

Python第三天