有c++/java基础学python1

列表 list 与 for 循环

Python 列表(List)

  • 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
    列表的数据项不需要具有相同的类型。
list1 = ['physics', 'chemistry', 1997, 2000]/列表的数据项不需要具有相同的类型。
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
  • 访问列表中的值
    使用下标索引来访问列表中的值
#!/usr/bin/python
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5, 6, 7 ]
 
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]/  [1:3]取下标为1,2的,前面能取到后面取不到

以上实例输出结果:

list1[0]: physics
list2[1:5]: [2, 3, 4, 5]

  • 更新列表
    可以使用append()方法来添加列表项,如下所示:
list = []          / 空列表
list.append('Google')   / 使用 append() 添加元素
list.append('Runoob')
print list

['Google', 'Runoob']

  • 删除列表元素
    可以使用 del 语句来删除列表的元素,如下实例:
list1 = ['physics', 'chemistry', 1997, 2000]
del list1[2] / del加下标
print "After deleting value at index 2 : "
print list1

After deleting value at index 2 :
['physics', 'chemistry', 2000]

Python 表达式 结果 描述
len([1, 2, 3]) 3 长度
[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] 组合
['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!'] 重复
3 in [1, 2, 3] True 元素是否存在于列表中
for x in [1, 2, 3]: print x, 1 2 3 迭代
  • Python列表截取
>>>L = ['Google', 'Runoob', 'Taobao']
>>> L[2]
'Taobao'
>>> L[-2] /截取倒数第二个元素
'Runoob'
>>> L[1:] /从下标为1的开始截取
['Runoob', 'Taobao']
  • Python列表函数&方法
    Python 列表(List) | 菜鸟教程 (runoob.com)

补充for循环


  • for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
for letter in 'Python':     /第一个实例,for遍历字符串
   print("当前字母: %s" %letter) %s通过str()字符串转换来格式化
 
fruits = ['banana', 'apple',  'mango']
for fruit in fruits:        / 第二个实例,for遍历列表,对象就是一个元素
   print ('当前水果: %s' %fruit)

当前字母: P
当前字母: y
当前字母: t
当前字母: h
当前字母: o
当前字母: n
当前水果: banana
当前水果: apple
当前水果: mango

  • 二、通过序列索引迭代
fruits = ['banana', 'apple',  'mango']
for index in range(len(fruits)):  /range(start,stop) 
   print ('当前水果 : %s' %fruits[index])

当前水果 : banana
当前水果 : apple
当前水果 : mango

  • 注释:range(start,stop[, step])
    start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
    stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
    step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

range(0, 30, 5) # 步长为 5
[0, 5, 10, 15, 20, 25]

x = 'runoob'
for i in range(len(x)) : #就是range(0,len)刚好就是全部下标
... print(x[i])
...
r
u
n
o
o
b

  • 三、循环使用 else 语句(其他语言没有)
    在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
for num in range(10,20):  / 迭代 10 到 20 之间的数字
   for i in range(2,num): / 根据因子迭代(2,10),(2,11)
      if num%i == 0:      / 确定第一个因子
         j=num/i          / 计算第二个因子
         print ('%d 等于 %d * %d' % (num,i,j))
         break            / 跳出当前循环,这个数可以被2,3....整除
   else:                  / 循环的 else 部分,当for都不行,即没执行到break,才执行else
      print ('%d 是一个质数' % num)

10 等于 2 * 5
11 是一个质数
12 等于 2 * 6
13 是一个质数
14 等于 2 * 7
15 等于 3 * 5
16 等于 2 * 8
17 是一个质数
18 等于 2 * 9
19 是一个质数

你可能感兴趣的:(有c++/java基础学python1)