Python——List

一、集成开发环境

集成开发环境(IDE,Integrated development Enviroment)是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写、分析、编译、调试等功能。

常用的IDE:

vim、Emacs   #Linux系统下比较典型的文本编辑器

Eclipse     #Java IDE,支持Java、Python、C、C++等

Visual Studio  #微软开发的IDE,支持多种语言的开发

NotePad++  

Sublime    #Python开发的IDE

Pycharm    #主要用于Python开发使用

二、Pycharm设置与使用

1、Pycharm首次安装完成后,默认不显示工具栏。需要使用工具栏时,在View下拉菜单中点击Toolbar即可。

2、文件模板设置

在工具栏中单击“设置”按钮。

在File and code Templates→Python Script中设置文件模板。

设置完成后,新建Python文件头部将自动获取计算机名称和当前日期。

三、格式化输出

1、占位符

%s  表示字符串占位

%d  表示数字占位

%f  表示浮点数占位

例:

 1 name = input("Name:")
 2 age = int(input("Age:"))
 3 job = input("Job:")
 4 salary = int(input("Salary:"))
 5 msg = '''
 6 ---------info of %s------------
 7 Name: %s
 8 Age: %d
 9 Job: %s
10 Salary: %d
11 You will be retired in %s year.
12 -------------------------------
13 '''%(name,name,age,job,salary,65-age)
14 print(msg)

输出结果:

Name:Oliver Lee
Age:25
Job:IT
Salary:1234

---------info of Oliver Lee------------
Name: Oliver Lee
Age: 25
Job: IT
Salary: 1234
You will be retired in 40 year.
-------------------------------

2、判断一个变量是否为数字;退出程序的用法

1 if salary.isdigit():  #通过调用isdigit()来判断数字
2    salary = int(salary)
3 else:
4    exit("Must input digit.")  #退出时打印提示信息,也可单独用exit()退出程序。

四、for循环

1、range()的用法

输出1~100之间的奇数,两种方法:

1 for i in range(1,101):     
2     if i % 2 == 1:
3         print("loop:",i)
4 
5 for i in range(1,101,2):    #range中的2表示步长。
6     print("loop:",i)

2、break的用法

 1 _user = 'oliver'
 2 _passwd = '123'
 3 flag = False
 4 for i in range(3):
 5     username = input("用户名:")
 6     password = input("密码:")
 7     if username == _user and password == _passwd:
 8         print("Welcome %s login..."%username)
 9         flag = True
10         break  #中断,跳出整个循环
11     else:
12         print("invalid username or password!")
13 if not flag:
14     print("尝试次数过多。")

3、for循环后,else的用法

 1 _user = 'oliver'
 2 _passwd = '123'
 3 for i in range(3):
 4     username = input("用户名:")
 5     password = input("密码:")
 6     if username == _user and password == _passwd:
 7         print("Welcome %s login..."%username)
 8         break
 9     else:
10         print("invalid username or password!")
11 else:                       #程序正常结束时执行else后的语句,通过break结束时不执行else。
12     print("尝试次数过多。")

五、while循环

例:

 1 _passwd = '123'
 2 count = 0
 3 while count < 3:
 4     username = input("用户名:")
 5     password = input("密码:")
 6     if username == _user and password == _passwd:
 7         print("Welcome %s login..."%username)
 8         break
 9     else:
10             print("invalid username or password!")
11     count += 1
12     if count == 3:
13         agin = input("还想玩吗?[y/n]")
14         if agin == 'y':
15             count = 0
16 else:
17     print("尝试次数过多!")

六、列表

1、查询列表元素,(切片)

1 a=['10','11','12','13','14']
2 print(a)
3 print(a[0:2])   # ['10', '11'] 从索引0开始取,从左至右取到索引1
4 print(a[0:])    # ['10', '11', '12', '13', '14'] 从索引0开始向右取到最后一个
5 print(a[0:-1])  # ['10', '11', '12', '13']  -1表示取到倒数第二个
6 print(a[0::2])  # 2表示步长,
7 print(a[0::-1]) # 步长为-1,表示方向从右向左
8 print(a[:])     #所有元素

2、向列表中添加元素

append和insert的区别:

1 a = ['zhangsan','lisi','wangmazi','laowang','nanshen']
2 a.append('fadsdf')    # 将新元素添加到列表最后
3 print(a)

输出结果:

['zhangsan', 'lisi', 'wangmazi', 'laowang', 'nanshen', 'fadsdf']
1 a = ['zhangsan','lisi','wangmazi','laowang','nanshen']
2 a.insert(1,'adsfadsf')  #将新元素添加到索引位置之前
3 print(a)

输出结果:

['zhangsan', 'adsfadsf', 'lisi', 'wangmazi', 'laowang', 'nanshen']

3、修改

先将元素从列表中取出来,然后替换

1 a = ['zhangsan','lisi','wangmazi','laowang','nanshen']
2 a[2] = 'adfsjk'       #将索引位置的元素替换为新元素
3 print(a)

输出结果:

['zhangsan', 'lisi', 'adfsjk', 'laowang', 'nanshen']

批量替换:

1 a = ['zhangsan','lisi','wangmazi','laowang','nanshen']
2 a[1:3]  = ['asdf','erwt']   #批量替换列表中的元素
3 print(a)

输出结果:

['zhangsan', 'asdf', 'erwt', 'laowang', 'nanshen']

4、删除

remove

1 a = ['zhangsan','lisi','wangmazi','laowang','nanshen']
2 a.remove('lisi')    #相当于a.remove(a[1])
3 print(a)

输出结果:

['zhangsan', 'wangmazi', 'laowang', 'nanshen']

pop

1 a = ['zhangsan','lisi','wangmazi','laowang','nanshen']
2 a.pop(1)      #pop中不指定索引号,则删除最后一个元素
3 b = a.pop(1)    #删除后可返回删除的元素
4 print(a)
5 print(b)    

输出结果:

['zhangsan', 'laowang', 'nanshen']
wangmazi

del

1 a = ['zhangsan','lisi','wangmazi','laowang','nanshen']
2 del a[3]
3 print(a)

输出结果:

['zhangsan', 'lisi', 'wangmazi', 'nanshen']
1 del a   #删除列表

clean

1 a.clear()  #清空列表

count

统计某一元素出现的次数。

1 a = ['zhangsan','lisi','wangmazi','laowang','nanshen','lisi']
2 print(a.count('lisi'))

输出结果:

 2

extend

扩展表。

1 a = ['ew','asfd','adsf']
2 b = [4,5,6]
3 a.extend(b)     # 把b中的元素添加到a中

输出结果:

['ew', 'asfd', 'adsf', 4, 5, 6]

index

根据元素找索引位置

1 a = ['ew','asfd','adsf']
2 print(a.index('asfd'))

1

reverse

元素顺序反转

1 a = ['ew','asfd','adsf']
2 a.reverse()
3 print(a)

结果:

['adsf', 'asfd', 'ew']

sort

排序,默认为从左到右升序。

1 a = [21,23,12,8,89]
2 a.sort()
3 print(a)

输出结果:

[8, 12, 21, 23, 89]

七、列表嵌套

a = [[1,2,3],'oliver',4,(2,3,4)]

print(a[3][1])

结果:3

type(a) is list

判断a是否为列表。

原文地址:https://www.cnblogs.com/pyramid1001/p/5797648.html