PythonDay04
本节内容
- 字符格式化输出
- for、while、break、continue
- 数据类型 整数、字符串、列表
1.IDE集成开发环境
- Vim 经典的linux下的文本编辑器
- Emacs linux文本编辑器,比Vim更容易使用
- Eclipse Java IDE,支持Python,C,C++
- Visual Studio 微软开发的IDE 支持Python,C++,java,C#
- Pycharm 主要用于Python开发的IDE
2.字符格式化输出
占位符 %s s=string %d d=digit整数 %f f=float 浮点数
采用占位符输出
name = input("Name:")
age = input("Age:")
job = input("Job:")
salary = input("Salary:")
print(name, age, job, salary)
msg = '''
----------info of %s--------
Name:%s
Age:%s
Job:%s
Salary:%s
----------end---------------
''' %(name, name, age, job, salary)
print(msg)
3.数据类型初识
数字
- 整型 int
- 长整型 long
- 浮点型 float 带有小数的数字
布尔 只有两种状态,分别是真(True) 假(False)
字符串 "hello world" 字符串的拼接 +或%s
- 计算机中,一切皆为对象
- 世界万物,皆为对象,一切对象皆可分类
4.for、while、break、continue
循环loop
- 有限循环 有次数限制
- 无限循环
for和break实现用户最多登录三次
user = "goto"
passwd = "abcd"
for i in range(3):
username = input("Username:")
password = input("Password:")
if username == user and password == passwd:
print("welcome %s login" % user)
break
else:
print("Invalid username or password!")
标志位flag
user = "goto"
passwd = "abcd"
pass_authentication = False # flag=标志位
for i in range(3):
username = input("Username:")
password = input("Password:")
if username == user and password == passwd:
print("welcome %s login" % user)
pass_authentication = True
break
else:
print("Invalid username or password!")
if not pass_authentication:
print("你已经连续输错三次,禁止再次登录")
for和else
user = "goto"
passwd = "abcd"
for i in range(3):
username = input("Username:")
password = input("Password:")
if username == user and password == passwd:
print("welcome %s login" % user)
break
else:
print("Invalid username or password!")
else:
print("已经输错三次")
else上面的for循环正常执行完毕,中间没有被打断,就会执行else语句
break过后,就不会执行后面的else语句
continue 结束本次循环,继续下一次循环; break跳出整个当前循环
5.列表
a = ['goto','world','sanpang','xiaohu','letme'] #增删改查
print(a[1])
#查 切片
print(a[1:3]) #取的值是左包括 右不包括
print(a[1:]) #取到最后一个值
print(a[1:-1]) #取不到最后一个的值
print(a[1:-1:1]) #从左到右一个一个去取
print(a[1:-1:2]) #从左到右隔一个去取
print(a[3::-2]) #从右到左,隔一个去取,负号代表向左
print(a[-2::-1])
执行结果
world
['world', 'sanpang']
['world', 'sanpang', 'xiaohu', 'letme']
['world', 'sanpang', 'xiaohu']
['world', 'sanpang', 'xiaohu']
['world', 'xiaohu']
['xiaohu', 'world']
['xiaohu', 'sanpang', 'world', 'goto']
#增 append insert
a.append('xiaoming') #append默认插在最后一个位置
print(a)
a.insert(1,'xiaoming') #insert插入到任意一个位置
print(a)
执行结果
['goto', 'world', 'sanpang', 'xiaohu', 'letme', 'xiaoming']
['goto', 'xiaoming', 'world', 'sanpang', 'xiaohu', 'letme', 'xiaoming']
#改
a[1]='haidilao' #去要修改位置的值重新赋值
print(a)
a[1:3]=['a','b']
print(a)
#删除 remove pop del
a.remove('goto') #remove直接删对应的值
print(a)
b=a.pop(1) #pop通过索引删除,并可以返回删除的值
print(b)
del a[0]
del a #可删单个值也可以删整个对象
#count统计字符出现次数
a=['to','be','or','not','to','be'].count('to')
print(a)
#extend 在列表的末尾一次性追加另一个序列中的值
a=[1,2,3]
b=[4,5,6]
a.extend(b)
print(a)
#index 从列表中找出某个值第一个匹配的索引位置
a = ['goto','world','sanpang','xiaohu','letme']
print(a.index('xiaohu'))
#reverse 颠倒位置
a = ['goto','world','sanpang','xiaohu','letme']
a.reverse()
print(a)
#sort 排序
x=[2,6,3,7,1,5]
x.sort(reverse=True)
print(x)
#x.reverse()
#print(x)
a = ['goto','world','sanpang','xiaohu','letme']
a.sort()
print(a)