python进阶之路一,变量、运算符、判断、while循环

变量:用来存储信息,方便被日后调用以及修改

命名规则:

1、 具有描述性。

2、 变量名只能以下划线、数字、字母组成。不可以包含特殊字符。

3、 不能以中文为变量名。

4、 只能以下划线或字母开头,不能以数字开头。

5、 保留字符不能使用,例如print之类。

6、 Python中没有变量常量之分,所有的变量都可以更改,为了方便程序员辨识,一般用全大写代表常量。

变量回收,python自动定期回收们没有定义的值,手动取消变量定义用del [变量名]。del虽然删除变量但是不会回收内存。

定义编码:程序第一行写入【#!-*- coding:utf-8 -*-】或者【#coding:utf-8】这是一个定式。或者变量前加u。例如name=u”帝释天”

注释符号

1、 单行注释用井号 #

2、 多行注释三个引号开始,三个引号结束。单双都可以。

例如  ’’’print(“helloword”)’’’

用户交互:input(“提示信息”)。例如:input(“you are name:”)  #有无提示符都可以。   

input接收的所有数据都是字符串。即使是数字也会被当成字符串处理。

把字符串转成整数用int(被转的数据)。整数被转成字符串用str(被转的数据)。多个字符串输出用逗号分隔。字符串拼接用加号+。

判断if语句:一个等号是赋值,两个等号是判断

格式:

if 条件1 :

    条件1成立时执行的语句

elif 条件2 :

    条件2成立时执行的语句

else :

    条件都不成立时执行的语句。

猜年龄示例:

oldboay_age = 56

guess_age = int (input ("请输入你的猜测:"))

if guess_age == oldboay_age :

    print ("你猜对了")

    print ("你真聪明")

elif guess_age > oldboay_age:

    print ("往小里猜猜试试。。。")

else:

print ("往大里猜猜看。。。")

#python要求强制缩进。不缩进代码报错。多个子行的缩进强制对齐。Notepad++设置成制表符强制转换为四个空格。避免程序因缩进不一致报错。

算数运算符

加减乘除(+、-、*、/)整除双斜杠//  取余百分号%   指数两个星** 优先级为:小括号最优先(),指数》乘除》加减

例如:

>>> 1+2

3

>>> 3-5

-2

>>> 1.2*4

4.8

>>> 5/2

2.5

>>> 5//2

2

>>> 5%2      #5除2取余

1

>>> 2**3     #指数运算,2的三次方

8

>>> (1+2)**2*4    #1加2结果的2次方再乘以4

36

>>> (1+2)*2**2   #1加2结果和2的二次方相乘

12

比较运算符:

等于两个等号==、大于>、小于<、大于等于>=、小于等于<=

例如4<5   3<4<5   5==5

示例:

name1=input("姓名:")

score1=input(name1+"的成绩:")

name2=input("姓名:")

score2=input(name2+"的成绩:")

name3=input("姓名:")

score3=input(name3+"的成绩:")

 

if int(score1) > int(score2):

    if int(score1) > int(score3):

        print ("成绩最高的是:"+name1)

    else :

        print ("成绩最高的是:"+name3)

else:

    if int(score2) > int(score3):

        print ("成绩最高的是:"+name2)

    else:

        print ("成绩最高的是:"+name3)

赋值运算符:   +=、-=、*=、/=、//=、**=、%=

 

number += 1  等同于 number = number + 1

number -= 1  等同于 number = number - 1

number *= 1  等同于 number = number * 1

number /= 1  等同于 number = number / 1

number //= 1  等同于 number = number // 1

number %= 1  等同于 number = number % 1

number **= 1  等同于 number = number ** 1

 

例如

>>> number = 3

>>> number +=2

>>> number

5

>>> number -= 3

>>> number

2

>>> number *=2

>>> number

4

>>> number /=1.5

>>> number

2.6666666666666665

>>> number //=1.5

>>> number

1.0

>>> number *=8

>>> number

8.0

>>> int (number)

8

>>> number %=3

>>> number

2.0

>>> number **=3

>>> number

8.0

 

逻辑运算符:   与或非  amd,or,not

短路逻辑规则如下:

    表达式从左至右运算,若 or 的左侧逻辑值为 True ,则短路 or 后所有的表达式(不管是 and 还是 or),直接输出 or 左侧表达式 。若 or 的左侧逻辑值为 False ,则输出or右侧的表达式,不论其后表达式是真是假,整个表达式结果即为其后表达式的结果

    表达式从左至右运算,若 and 的左侧逻辑值为 False ,则短路其后所有 and 表达式,直到有 or 出现,输出 and 左侧表达式到 or 的左侧,参与接下来的逻辑运算。若 and 的左侧逻辑值为 True,则输出其后的表达式,不论其后表达式是真是假,整个表达式结果即为其后表达式的结果

    若 or 的左侧为 False ,或者 and 的左侧为 True 则不能使用短路逻辑。

    注意:

    1、在Python中and的优先级是大于or的,而且and和or都是会返回值的并且不转换为True和False。当not和and及or在一起运算时,优先级为是not>and>or

    2、在Python中,None、任何数值类型中的0、空字符串“”、空元组()、空列表[]、空字典{}都被当作False,还有自定义类型,如果实现了  __ nonzero __ () 或 __ len __ () 方法且方法返回 0 或False,则其实例也被当作False,其他对象均为True。

优先级:

运算符说明

Python运算符

优先级

小括号

()

20

索引运算符

x[index] 或 x[index:index2[:index3]]

18、19

属性访问

x.attrbute 

17

乘方

**

16

按位取反

~

15

符号运算符

+(正号)或 -(负号)

14

乘、除

*、/、//、%

13

加、减

+、-

12

位移

>>、<<

11

按位与

&

10

按位异或

^

9

按位或

|

8

比较运算符

==、!=、>、>=、<、<= 

7

is 运算符

is、is not

6

in 运算符

in、not in

5

逻辑非

not

4

逻辑与

and

3

逻辑或

or

2

具体是短路计算原则还是有优先级暂时不明白,所以为了避免出错,将先运算的用小括号括起来。例如

>>> 4==4 or 3<4  and not 4<5

True

>>> ( 4==4 or 3<4 ) and not 4<5

False

 

格式化输出
占位符:%s:string $d:digit(整数) %f:floot(浮点数)
location='杭州上蔡'
str='''
姓名:%s
性别:%s
工资:%f
家庭住址:%s
手机:%d
'''%('菜籽',"男",150000,location,110)
print(str)
for循环
格式:
for <条件>:
<command>
else:
<command>
当循环正常结束会执行else后的语句。
for i in range(0,14):
if i==7:
continue
print(i,end=" ")
if i==7:
break
else:
print(end="\n")
print("7被略过")

 

while循环:

格式:

while 条件 :

    表达式

else;

    表达式

注:else的表达式表示当while正常结束时执行,如是flag=False、break之类的非正常结束将不执行 。     

表达式一行注意缩进例如:

age = 0

num = 0

while age != 66 :

    age = int(input ("请输入你的猜测:"))

    num += 1

print ("猜了"+str(num)+"次,终于猜对了")   

实例二

i=1

while i<=100:

    print (i)

i += 1

打印偶数

num=1

while num<=100:

    if num%2 == 0:

        print (num)

num += 1

更简单的打印偶数:

i=2

while i<=100:

    print (i)

i += 2

中断循环的两种方式:一、flag=False  二、 break

例如:age = 0

num = 0

while age != 66 :

    age = int(input ("请输入你的猜测:"))

    num += 1

    if age > 66:

        print ("猜大了")

    elif age < 66:

        print ("猜小了")

    else:

        flag = False

print ("猜了"+str(num)+"次,终于猜对了")

跳出当前循环  continue

指定结尾符号:默认是换行

格式  print(end=”【指定的分隔符】”)         #换行:Linux下\n  win下:\r\n 苹果mac下是\r

 

乘法口诀表实例:

l=1

w=1

while l<=9:

    while w<=l:

        print (str(w)+"x"+str(l)+"="+str(l*w),end=" ")

        w += 1

    l += 1

    w = 1

print(end="\n")

输出一个长方形实例:

wide = 0

leng = 0

in_wide = input ("请输入宽度:")

in_leng = input ("请输入长度:")

while  wide < int(in_wide) :

    while leng < int(in_leng) :

        print ("#",end="")

        leng += 1

    if wide == int(in_wide)-1:

        continue

    print (end="\n")

    wide += 1

    leng = 0

posted @ 2019-11-27 20:58  翎戍  阅读(273)  评论(0编辑  收藏  举报