While循环,格式化输出,算术运算符,改py文件名字

一.While循环

while来打印每个元素

 

s = "风扇哥门神哥,邓生"
i = 0
while i <len(s):
    print(s[i])
    i+=1

 

 

while循环的感悟:while循环多用在交互程序里,做判断:而for循环多是用来获取某个类型集合(list,str,tupe,set...)里面的值

content  #内容的意思,是变量名
count    #计数的意思,是变量名

break  #彻底的结束循环

continue #停止本次循环,继续执行下次循环

break的使用:

 

1 while True:
2     content = input(“请输入内容”)
3     if conten == "":  #if代码后面一定要跟":" 
4         break      #终止本次循环,          
5 print(“你对打野说:”,content)

 

 

 

#break跳出的是整个while循环体.就是不会在执行while循环体

continue的使用:

 

while True:
    content=input("请输入你要喷的内容,按Q退出")
    if content=="":
        continue    # 停止当前本次循环. 继续执行下一次循环  不会彻底中断循环.
    elif content=="Q":
        break      # 退出本轮循环.
    print("你对打野说:",content)

 

 

 

#让while 循环停止的两种方法:1.在设定区间.2.用break方法.

while打印1,2,3,4,5,6,7,9,10

 

count=1
while count<11:
    if count==9:
        count +=1
        continue
    else:
        print(count)
        count+=1   

 

 

 

二.格式化输出

输入完姓名,来自哪里,老婆是谁,不喜欢那个明星后,把它打印成下列格式:

 

inof of name----------------
Name :
Address:
Wife:
Notlike:

 

 

 

答:

 

name = input("请输入名字:")
address = input("请输入你来自哪里:")
wife = input ("请输入你的老婆:")
notlike = input("请输入你不喜欢的明星:")

 

 

 

==================================================================================

方法一、%s 字符串占位符方法

 

info = '''
-------------info of %s ---------------
Name    :%s
address :%s
wife    :%s
notlike :%s
'''%(name,name,address,wife,notlike)
print(info)

 

 

 

推荐方法二、f"{变量}"

 

print(f'''-----info of {name}-----------
Name:{name}
Address:{address}
Wife:{wife}
Notlike:{notlike}''')

 

 

 

方法三、f"{}"

 

print(f'''--------------------------------inof of {name}----------------  #因为这里的代码不在一行,所以,用到了多行注释
Name :{name}
Address:{address}
Wife:{wife}
Notlike:{notlike}''')

 

 

 

方法四、"{}".format() 

 

print('''--------------------------------inof of {0}----------------  #format()方法是根据后面括号里的索引来写,从0开始,所以下标一定要对上!
Name :{0}
Address:{1}
Wife:{2}
Notlike:{3}'''.format(name,address,wife,notlike))

 

 

 

# %s是字符串占位; %d是数字占位符,就是只能输入数字的类型;%f浮点数占位符

#如果想显示正常的"%",就使用"%%"进行转义

三.算术运算

1.算术运算符
-
*
/
%  #取模(返回除法的余数)
**  #
//  #取整除(返回商的部分.例如9//2输出结果4,9.0//2.0输出结果4.0) 
2.比较运算符
=   #等于(赋值)
!=  #不等于(比较两个对象是否不相等)
+=  #加法赋值(c += a,等效与c = c+a)
......

 

is 比较的是两个实例对象是不是完全相同,它们是不是同一个对象,占用的内存地址是否相同。莱布尼茨说过:“世界上没有两片完全相同的叶子”,这个is正是这样的比较,比较是不是同一片叶子(即比较的id是否相同,这id类似于人的身份证标识)。

== 比较的是两个对象的内容是否相等,即内存地址可以不一样,内容一样就可以了。这里比较的并非是同一片叶子,可能叶子的种类或者脉络相同就可以了。默认会调用对象的 __eq__()

 

 

 

3.逻辑运算符

 

not  #布尔:非 ,就是反着干,如果真的有not,就变成假的了
and  #布尔:与 ,左右两边都是真才能时真.("本性"喜欢假,左右都为真选右边的)
or  #布尔:或,左右两边如果有一个是真就时真.("本性"是喜欢真,左右都为真选左边的) 

 

1 content = input("请输入你的评论")
2 if "苍老师" in content or "邱老师" in content"
3     print("你输入的内容不合法")
4 else:
5     print("评论成功")
==================================
=  #赋值

+=  加法赋值运算符

-=  减法赋值运算符

*=  乘法赋值运算符

/=  除法赋值运算符

%=  取模赋值运算符

**=  幂赋值运算符

//=   取整数赋值运算符

 

 

逻辑运算符的感悟:and 用在程序里是,做并且的意思用,就是当2个条件都成立,才...

         or 用在程序里做,或者的意思用,可以巧妙的设定一个区间,例如

goods = [{"name": "电脑", "price": 1999},
         {"name": "鼠标", "price": 10},
         {"name": "游艇", "price": 20},
         {"name": "美女", "price": 998}]
dic = {}
for i in range(len(goods)):
    dic[i] = goods[i]      #形成一个嵌套字典
    print(i+1, "   ", dic[i]["name"], "   ", dic[i]["price"])   #打印出序列号+名称+价钱
while True:
    l = input("请输入你想要购买的商品序号(输入Q或者q退出):")
    if l.upper() == "Q":
        break                   #设置退出机制
    elif l.isdigit() == False:         #设置Q以外字母的处置方案
        print("请重新输入")
        continue
    elif l.isdigit() == True and (int(l) > len(goods) or int(l) == 0):  #数字大于所给的序列号处置方案,这个就是设置区间哦~!!!
        print("看清楚哦")
        continue
    else:  #剩下的就是正常数字处理方案
        print(dic[int(l)-1]["name"], "    ", dic[int(l)-1]["price"])
        break

#在没有"()"的情况下,not优先级高于and,and高于or.即() > not > and > or,同一优先级从左往右计算

==================================================

#关于in和not in

判断x字符串是否在xx字符串中

1 content = input("请输入你的评论")
2 if "苍老师" in content or "邱老师" in content"
3     print("你输入的内容不合法")
4 else:
5     print("评论成功")

举例说明

 1 print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 or 6 ) 

结果是6

4.赋值运算符

运算符    描述    实例
=    简单的赋值运算符    c = a + b 将 a + b 的运算结果赋值为 c
+=    加法赋值运算符    c += a 等效于 c = c + a
-=    减法赋值运算符    c -= a 等效于 c = c - a
*=    乘法赋值运算符    c *= a 等效于 c = c * a
/=    除法赋值运算符    c /= a 等效于 c = c / a
%=    取模赋值运算符    c %= a 等效于 c = c % a
**=    幂赋值运算符    c **= a 等效于 c = c ** a
//=    取整除赋值运算符    c //= a 等效于 c = c // a

四.编码的问题

 

1.ascii   #8bit表示1byte(字节),256个码位,升级版是ANSI

2.GBK    #16bit表示2byte(字节)中国人根据ANSI升级来的.中文编码

3.unicode #32bit表示4byte(字节),是万国码,够用但是浪费.

4.utf-8  #可变长度的unicode

  英文:1byte

  欧文:2byte

  中文:3byte

字节(byte)

1byte = 8bit

1kb = 1024byte

1mb = 1024mb

 =====================================================================================================

#零碎知识

一、改PyCharm里.py文件名字的方法:

先右击

然后找到这个

然后找到这个就可以改了.

二、生词:

format()   #格式 的意思,是内置函数

 

posted @ 2018-12-04 21:25  Tank-Li  阅读(415)  评论(0编辑  收藏  举报