一、集成开发环境

集成开发环境(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  表示浮点数占位

例:

 name = input("Name:")
age = int(input("Age:"))
job = input("Job:")
salary = int(input("Salary:"))
msg = '''
---------info of %s------------
Name: %s
Age: %d
Job: %s
Salary: %d
You will be retired in %s year.
-------------------------------
'''%(name,name,age,job,salary,65-age)
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、判断一个变量是否为数字;退出程序的用法

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

四、for循环

1、range()的用法

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

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

2、break的用法

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

3、for循环后,else的用法

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

五、while循环

例:

 _passwd = ''
count = 0
while count < 3:
username = input("用户名:")
password = input("密码:")
if username == _user and password == _passwd:
print("Welcome %s login..."%username)
break
else:
print("invalid username or password!")
count += 1
if count == 3:
agin = input("还想玩吗?[y/n]")
if agin == 'y':
count = 0
else:
print("尝试次数过多!")

六、列表

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

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

2、向列表中添加元素

append和insert的区别:

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

输出结果:

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

输出结果:

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

3、修改

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

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

输出结果:

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

批量替换:

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

输出结果:

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

4、删除

remove

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

输出结果:

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

pop

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

输出结果:

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

del

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

输出结果:

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

clean

 a.clear()  #清空列表

count

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

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

输出结果:

 2

extend

扩展表。

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

输出结果:

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

index

根据元素找索引位置

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

1

reverse

元素顺序反转

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

结果:

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

sort

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

 a = [21,23,12,8,89]
a.sort()
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是否为列表。

Python学习笔记——Day2的更多相关文章

  1. Python学习笔记 - day2 - PyCharm的基本使用

    什么是IDE 开始学习的小白同学,一看到这三个字母应该是懵逼的,那么我们一点一点来说. 既然学习Python语言我们就需要写代码,那么代码写在哪里呢? 在记事本里写 在word文档里写 在sublim ...

  2. [python学习笔记]Day2

    摘要: 对象 对于python来说,一切事物都是对象,对象基于类创建: 注:查看对象相关成员 var,type,dir 基本数据类型和序列 int内部功能 class int(object): def ...

  3. python学习笔记-Day2 Numpy数组

    1. 实现两个数组相加,在数据量特别大的时候 产生数组: (1)  从列表产生数组:a=[0,1,2,3] a=np.array(1) a (2)  从列表传入 a=np.array([1,2,3,4 ...

  4. python学习笔记Day2

    字符编码 编程规范(PEP8) 变量1.常量(用大写) 2.变量 常用类型:str .int.float. long.bool 字串格式化: %d 整数 %2d占两位 %02d占两位用0填充 %f 浮 ...

  5. 【目录】Python学习笔记

    目录:Python学习笔记 目标:坚持每天学习,每周一篇博文 1. Python学习笔记 - day1 - 概述及安装 2.Python学习笔记 - day2 - PyCharm的基本使用 3.Pyt ...

  6. python学习笔记整理——字典

    python学习笔记整理 数据结构--字典 无序的 {键:值} 对集合 用于查询的方法 len(d) Return the number of items in the dictionary d. 返 ...

  7. VS2013中Python学习笔记[Django Web的第一个网页]

    前言 前面我简单介绍了Python的Hello World.看到有人问我搞搞Python的Web,一时兴起,就来试试看. 第一篇 VS2013中Python学习笔记[环境搭建] 简单介绍Python环 ...

  8. python学习笔记之module && package

    个人总结: import module,module就是文件名,导入那个python文件 import package,package就是一个文件夹,导入的文件夹下有一个__init__.py的文件, ...

  9. python学习笔记(六)文件夹遍历,异常处理

    python学习笔记(六) 文件夹遍历 1.递归遍历 import os allfile = [] def dirList(path): filelist = os.listdir(path) for ...

随机推荐

  1. java.lang.OutOfMemoryError: PermGen space异常处理(内存溢出)

    楼主刚接触到这个问题,问度娘,直接查到的都是让 在tomcat>bin>catalina.sh文件的“echo "Using CATALINA_BASE: $CATALINA_B ...

  2. 动态内存分配导致Javascript性能的问题

    内存分配对性能的影响是很大的,分配内存本身需要时间,垃圾回收器回收内存也需要时间,所以应该尽量避免在堆里分配内存.不过直到最近优化HoLa cantk时,我才深刻的体会到内存分配对性能的影响,其中有一 ...

  3. js输入,输出基本操作

  4. display 和 visibility 的区别

    设置控件隐藏 1.display:none  不为元素保留位置 2.visibility:hidden  占位置,是对象在网页上看不到,所占空间没有变化

  5. 回车键转tab键解决方案一

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  6. 介绍开源的.net通信框架NetworkComms框架之五 心跳检测

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...

  7. JS只弹出一个居中弹出窗口

    var newWindow;//定义一个窗口,有利于窗口间的通讯function makeNewWindow(url) {   if (!newWindow || newWindow.closed) ...

  8. java基础介绍(转)

    很全面的介绍JAVA基础的文档 Java 编程简介,第 1 部分: Java 语言基础 http://www.ibm.com/developerworks/cn/java/j-introtojava1 ...

  9. Ubuntu操作系统安装使用教程 (转)

    随着微软的步步紧逼,包括早先的Windows黑屏计划.实施,逮捕番茄花园作者并判刑,种种迹象表明,中国用户免费使用盗版Windows的日子将不会太长久了,那么这个世界上有没有即免费又易用的操作系统呢? ...

  10. javascript笔记7-事件

    主要讲事件流.事件捕获.事件冒泡.事件处理程序.事件属性.事件类型.内存和优化等. 由于本文已经在微信订阅号上发布,为了防止原创性冲突检测,因此本文在此处已经删除. 详细请扫描订阅号二维码,查看历史信 ...