python第一天 循环

var1.py第一段代码:

1 #!usr/bin/env python
2 #-*- coding:utf-8-*-
3 # Author calmyan
4 print('hello world')
5 name = ''
6 name2=name
7 print('我的名字:',name,name2)
8 name='utem'
9 print('我的名字:',name,name2)
1

相对来说,于C相比更有便洁,简懂!

 1 #!usr/bin/env python
 2 # Author calmyan
 3 import getpass
 4 name="calmyan"
 5 password="123abc"
 6 
 7 username=input("nsername:")
 8 userpassword=getpass.getpass("password:")
 9 # userpassword=input("password:")
10 if name==username and password==userpassword:
11     print("欢迎{name}登陆".format(name=username))
12 else:
13     print("用户名或密码错误")
2

使用pyCharm在windows10运行getpass有些问题,用cmd进行运行可以正常运行!

多行字符输出的三种方法(int类型需要强制转换):

 1 #!usr/bin/env python
 2 #-*- coding:utf-8-*-
 3 # Author calmyan
 4 name=input("name:")
 5 age=int(input("age:"))#int 强制转换
 6 job=input("job:")
 7 salary=input("salary:")
 8 
 9 # info='''
10 # ---------info of '''+name+'''---------
11 # Name:'''+name+'''
12 # Age:'''+age+'''
13 # Job:'''+job
14 
15 # info='''
16 # ------info of %s --------
17 # Name:%s
18 # Age:%d
19 # Job:%s
20 # salary:%s
21 # '''%(name,name,age,job,salary)
22 
23 info2='''
24 ------info of {_name} --------
25 Name:{_name}
26 Age:{_age}
27 Job:{_job}
28 salary:{_salary}
29 '''.format(_name=name,
30            _age=age,
31            _job=job,
32            _salary=salary)
33 info3='''
34 ------info of {0} --------
35 Name:{0}
36 Age:{1}
37 Job:{2}
38 salary:{3}
39 '''.format(name,
40            age,
41            job,
42            salary)
43 print(info2)
44 print(info3)
3

while与for 循环的对比:  

 1 #!usr/bin/env python
 2 # Author calmyan
 3 
 4 
 5 age_name=45
 6 
 7 count=0
 8 while count<=3:
 9     guess_age=int(input("age:"))
10     if guess_age==age_name:
11         print("yes,you got it")
12         break
13     elif guess_age>age_name:
14         print("think smaller....")
15     else:
16         print("think bigger...")
17     count=count+1
18 else:
19     print("你试的次数太多了!")
20 
21 for i in range(3):
22     guess_age=int(input("age:"))
23     if guess_age==age_name:
24         print("yes,you got it")
25         break
26     elif guess_age>age_name:
27         print("think smaller....")
28     else:
29         print("think bigger...")
30 else:
31     print("你试的次数太多了!")
4
对循环进行优化可以更加人性: 
 1 #猜数字
 2 age_name=45
 3 count=0
 4 while count<=3:
 5     guess_age=int(input("age:"))
 6     if guess_age==age_name:
 7         print("yes,you got it")
 8         break
 9     elif guess_age>age_name:
10         print("think smaller....")
11     else:
12         print("think bigger...")
13     count=count+1
14     if count==3:
15         countine_confirm=input("do you want to keep guessing..? n=exit")#是否继续!n退出!
16         if countine_confirm !='n':
17             count=0
18         else:
19             exit()
20 else:
21     print("你试的次数太多了!")
5
 

 第一天学习了基础的语法,相对还是容易理解!

 1 #复制以下代码可以正常游戏
 2 print('猜数字游戏')
 3 
 4 import random
 5 secrst = random.randint(1,99)
 6 number=secrst
 7 
 8 amount = random.randint(3,8)
 9 print('本次游戏次数为',amount,'')
10 
11 count=0
12 while count<=amount:
13     try:
14         guess=int(input("开始:"))
15     
16         if guess == number:
17             print('猜对了')
18             break
19         elif guess > number:
20             print('大了')
21         else:
22             print('小了')
23 
24             
25         count=count+1
26         if count==amount:
27             countine_confirm=input('任意键重新开始,“N”键退出游戏')
28             if countine_confirm !='n':
29                 count=0
30             else:
31                 exit()
32     except:
33         print('请输入数字,而不是其他')
34 
35             
36 print('游戏结束')
#复制以下代码可以正常猜数字游戏

 

 1 print<打印>('猜数字游戏')
 2 
 3 import<调入> random<模块>#调入函数模块
 4 secrst<变量名1> = random.randint<函数,随机的整数>(1,99)<参数1到99>#为变量名赋值一个随机的整数
 5 number<变量名2>=secrst<变量名1>#为变量名赋值变量#本句可以省略原因自己想,想不出来照做!
 6 
 7 amount<变量名3> = random.randint<函数,随机的整数>(3,8)<参数3到8>
 8 print<打印>('本次游戏次数为',amount<变量名3>,'')
 9 
10 count<变量名4>=0<整数0>
11 while<为真循环> count<变量名4><=amount<变量名3>:#当以下条件为真就循环,当<变量名4>大于等于<变量名3>就执行
12     try:<检测程序以下是否异常,出现异常执行except>
13         guess<变量名5>=int(input("开始:"))<输入整数>
14     
15         if<条件分支,为真执行以下> guess<变量名5> == number<变量名2>:
16             print<打印>('猜对了')
17             break<中止程序>
18         elif<条件判断,为真执行以下> guess<变量名5> > number<变量名2>:
19             print<打印>('大了')
20         else<条件分支,为假执行以下>:
21             print<打印>('小了')
22             
23         count<变量名4>=count<变量名4>+1<加整数1>   
24         if<条件分支,为真执行以下> count<变量名4>==amount<变量名3>:
25             countine_confirm<变量名6>=input<输入>('任意键重新开始,“N”键退出游戏')
26             if<条件分支,为真执行以下> countine_confirm<变量名6> !='n'<不等于按键n>:
27                 count<变量名4>=0<整数0>
28             else<条件分支,为假执行以下>:
29                 exit()<退出程序>
30     except:<出现异常执行以下>
31         print<打印>('请输入数字,而不是其他')
32 
33             
34 print<打印>('游戏结束')
猜数字游戏分解

 

 1 游戏思路核心
 2 
 3 打印游戏欢迎,提示游戏开始
 4 生成一个数字
 5 条件为真就循环
 6                条件判断输入一个数字等于生成的的数字,执行以下
 7                    <打印>('猜对了')
 8                    停止程序
 9                <否则就进行以下条件判断>
10                条件判断如果输入数大于生成数就<打印>('大了')
11                条件判断为假<打印>('小了')
12                <判断执行完以上重新循环>
13                     
14 游戏思路扩展增加猜测的次数
15 
16 打印游戏欢迎,提示游戏开始
17 生成一个数字
18 生成一个最高猜测次数
19 定义初始猜测次数
20 
21 条件为真就循环
22               条件判断输入一个数字等于生成的的数字,执行以下
23                   <打印>('猜对了')
24                   停止程序
25               条件判断如果输入数大于生成数就<打印>('大了')
26               条件判断为假<打印>('小了')
27 
28               初始次数等于次数次加1
29               条件判断初始次数等于最高次数执行以下    
30                    输入一个按键
31                    条件判断输入的按键不等于退出键执行以下
32                        初始次数等于新次数
33               <判断执行完以上重新循环>
34                    条件判断为假<为退出键>
35                        退出程序
36 
37 游戏思路扩展错误提示
38 
39 打印游戏欢迎,提示游戏开始
40 生成一个数字
41 生成一个最高猜测次数
42 定义初始猜测次数
43 
44 条件为真就循环
45               <检测程序以下是否异常,出现异常执行except>
46               条件判断输入一个数字等于生成的的数字,执行以下
47                   <打印>('猜对了')
48                   停止程序
49               条件判断如果输入数大于生成数就<打印>('大了')
50               条件判断为假<打印>('小了')
51 
52               初始次数等于次数次加1
53               条件判断初始次数等于最高次数执行以下    
54                    输入一个按键
55                    条件判断输入的按键不等于退出键执行以下
56                        初始次数等于新次数
57               <判断执行完以上重新循环>
58                    条件判断为假<为退出键>
59                        退出程序
60               <出现异常执行以下>
猜数字游戏思路

 

 1 #所有脚本第一句话都要写解释以下脚本是用什么解释器
 2 #!/usr/bin/env python
 3 #语言设置为:简体中文
 4 #_*_coding:utf-8_*_
 5 
 6 
 7 #变量定义的规则:
 8 
 9 #变量名只能是 字母、数字或下划线的任意组合
10 #变量名的第一个字符不能是数字
11 #以下 关键字 不能声明为变量名
12 ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif',
13  'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if',
14  'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise',
15  'return', 'try', 'while', 'with', 'yield']
变量定义的规则:
 1 #input <输入>
 2 #print<打印>
 3 username = input('用户名')
 4 password = input('密码')
 5 print(username,password)
 6 ######################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 7 #输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:
 8 #另存为 passwd.py到  c:\users\alex\pycharmprojects\s14\day1>python
 9 
10 import getpass
11 
12 username = input('usernmae:')
13 password = getpass.getpass('password:')
14 
15 print(username,password)
16 
17 cd c:\users\alex\pycharmprojects\s14\day1>python passwd.py
18 
19 ######################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
20 
21 #  .format   <格式>
22 #  import    <调用>  getpass<py系统自带函数模块,密文输入>
23 #  print     <打印>
24 #  if        <条件成立执行>
25 #  and       <而且>
26 #  else      <if条件不成立时执行>
27 
28 import getpass
29 
30 name = 'alex'
31 word = 'as123'
32 
33 username = input('名字:')
34 password = input('密码:')
35 
36 if name == username and word == password:
37     print('欢迎 {N} 登录'.format(N=name))
38 else:
39     print('账号或者密码错误')
简单的账号密码
 1 #  i  <变量名>
 2 #  range(10)  <范围>  (0,1,2,3,4,5,6,7,8,9)<0-9十个数>
 3 
 4 for i in range(10):
 5     print('loop',i)
 6 
 7     
 8 #  (0,10,3)  <起始数,结束值,步长>  <步长默认加1>
 9 for i in range(0,10,3):
10     print('loop',i)
11 
12 
13 ######################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
14 
15 # continue  <跳出本次循环,重新循环>
16 
17 for h in range(0,10):
18     if h <3:
19         print('loop',h)
20     else:
21         print('kkkkkk...')
22         continue
23         print('yyyyyy...')
24     print('呵呵呵...')
25 
26 ######################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
27 
28 #  for t in range(9)  <条件循环> <变量名> <在> <范围(参数)>
29 #  print  <打印>
30 #  if     <条件判断>
31 #  break  <中止程序>
32 
33 for t in range(9):
34     print('______',t)
35     for j in range(11,50):
36         print(j)
37         if j >= 22:
38                break
简单的for<条件循环>
 1 #模块寻找路径先在当前目录下寻找,然后在全局环境变量目录里寻找
 2             
 3 #'''你会发现,上面自己写的tab.py模块只能在当前目录下导入,
 4 #如果想在系统的何何一个地方都使用怎么办呢? 此时你就要
 5 #把这个tab.py放到python全局环境变量目录里啦,基本一般都
 6 #放在一个叫 Python/2.7/site-packages 目录下,这个目录
 7 #在不同的OS里放的位置不一样,用 print(sys.path) 可以查
 8 #看python环境变量列表。'''
 9                  #系统自带模块在以下目录里为  XXX.py的文件
10 #C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\Lib
11 
12                  #默认第三方模块在以下目录里(即是全局环境变量目录)
13 #C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\Lib\site-packages
14 
15 import sys
16 print(sys.path)  #打印环境变量
17 print('------我割割割-------')
18 print(sys.argv)   #打印路径
19 
20 ######################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
21 
22 import os
23 
24 #cmd = os.system('dir')#执行命令,不保存结果
25 
26 #print('查看1',cmd)
27 
28 #直接输出到屏幕上
29 
30 #cmd2 = os.popen('dir2').read()
31 #print('查看2',cmd2)
32 
33 cmd3 = os.mkdir('查看3')
34 print('查看3',cmd3)
环境变量
 1 1、数字
 2 int(整型)
 3 -9223372036854775808~9223372036854775807
 4 
 5 float(浮点型)
 6 3.23和52.3E-4是浮点数的例子。E标记表示10的幂。在这里,52.3E-4表示52.3 * 10-4
 7 complex(复数)
 8 (-5+4j)和(2.3-4.6j)是复数的例子,其中-5,4为实数,j为虚数
 9 
10 2、布尔值
11   真或假
12   1 或 0
13 
14 3、字符串
15 "hello world"
PY类型
 1 #############################################################################>>>
 2 #
 3 #  字符串格式化符号含义
 4 #
 5 #  符号             说明
 6 #
 7 #  %c  <格式化字符及其ASCII码><a=97>
 8 #           >>> '%c %c %c %c %c' % (97,98,99,100,101)
 9 #           >>> 'a b c d e'
10 #  %s  <格式化字符串>
11 #           >>> '%s' % 'I love fc'
12 #           >>> 'I love fc'
13 #  %d  <格式化整数>
14 #           >>> '%d + %d = %d' % (4,5,4+5)
15 #           >>>  '4 + 5 = 9'
16 #  %o  <格式化无符号八进制数>
17 #  %x  <格式化无符号十六进制数>    <10=a,11=b>
18 #           >>> '%x' % 160
19 #           >>>'a0'
20 #  %X  <格式化无符号十六进制数(大写)>    <10=A,11=B>
21 #  %f  <格式化定点数,可以指定小点后的精度>
22 #           >>> '%F' % 27.986
23 #           >>> '27.986000'
24 #  %e  <用科学计数法格式化定点数>
25 #           >>> '%e' % 27.158
26 #           >>> '2.715800e+01'
27 #  %E  <作用同%e,用科学计数法格式化定点数>
28 #  %g  <根据值的大小决定使用%f或%e>
29 #  %G  <作用同%g,根据值的大小决定使用%f或%E>
30 #
31 #############################################################################>>>
字符串格式化符号含义
 1 #print<打印>
 2 #打印数据类型
 3 
 4 name = input('名字:')
 5 age = int(input('年龄:'))
 6 print(type(age),  type(str(age)))
 7 job = input('行业:')
 8 salaty = input('年薪:')
 9 
10 
11 info = '''
12 --------info of %s -----
13 Name:%s
14 Age:%d
15 job:%s
16 salary:%s
17 ''' %(name,name,age,job,salaty)
18 print(info)
19 ============== RESTART: C:/Users/Administrator/Documents/学习.py ==============
20 名字:a
21 年龄:12
22 <class 'int'> <class 'str'>
23 行业:sdad
24 年薪:2555
25 
26 --------info of a -----
27 Name:a
28 Age:12
29 job:sdad
30 salary:2555
打印数据类型
 1 #############################################################################>>>
 2 #显式转换的多种类型
 3 #
 4 #int (x [,base]) ⇒ 将x转换为一个十进制的整数 
 5 #long(x [,base]) ⇒ 将x转换为一个十进制的长整数 
 6 #float(x) ⇒ 将x转换为一个浮点数 
 7 #str(object) ⇒ 转换为字符串 
 8 #repr(object) ⇒ 转换为表达式字符串 
 9 #eval(str) ⇒ 用来计算在字符串中的有效Python表达式,并返回一个对象 
10 #tuple(seq) ⇒ 将序列seq转换为一个元组 
11 #list(seq) ⇒ 将序列seq转换为一个列表 
12 #chr(x ) ⇒ 将一个整数转换为一个字符 
13 #unichr(x ) ⇒ 将一个整数转换为Unicode字符 
14 #ord(x ) ⇒ 将一个字符转换为它的整数值 
15 #hex(x ) ⇒ 将一个整数转换为一个十六进制字符串 
16 #oct(x ) ⇒ 将一个整数转换为一个八进制字符串
17 #############################################################################>>>
显式转换的多种类型
 1 #############################################################################>>>
 2 #   当行注释:# 被注释内容
 3 #   多行注释:   ''' 被注释的内容  '''
 4 #
 5 #
 6 info = '''
 7 
 8 
 9 
10 '''
11 #
12 #############################################################################>>>
如何注释内容
 1 ######################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 2 
 3 #format<格式>
 4 
 5 name = input('名字:')
 6 age = int(input('年龄:'))
 7 print(type(age),  type(str(age)))
 8 job = input('行业:')
 9 salaty = input('年薪:')
10 
11 
12 info2 = '''
13 --------info of {N}  --------
14 姓名:{N}
15 芳龄:{A}
16 职业:{J}
17 工资:{S}
18 '''.format(N=name,
19            A=age,
20            J=job,
21            S=salaty)
22 
23 print(info2)
24 
25 ============== RESTART: C:\Users\Administrator\Documents\学习.py ==============
26 名字:yyy5
27 年龄:88
28 <class 'int'> <class 'str'>
29 行业:dgdgdg5dgdfg
30 年薪:9995121
31 
32 --------info of yyy5  --------
33 姓名:yyy5
34 芳龄:88
35 职业:dgdgdg5dgdfg
36 工资:9995121
37 
38 >>> 
39 ###################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
40 
41 #format<格式>
42 
43 name = input('名字:')
44 age = int(input('年龄:'))
45 print(type(age),  type(str(age)))
46 job = input('行业:')
47 salaty = input('年薪:')
48 
49 
50 info3 = '''
51 --------info of {0}  --------
52 姓名:{0}
53 芳龄:{1}
54 职业:{2}
55 工资:{3}
56 '''.format(name,age,job,salaty)
57 
58 print(info3)
59 
60 >>> 
61 ============== RESTART: C:\Users\Administrator\Documents\学习.py ==============
62 名字:d5as6d5
63 年龄:56565
64 <class 'int'> <class 'str'>
65 行业:ad2a6sd6a
66 年薪:26s5d6s2d6s2
67 
68 --------info of d5as6d5  --------
69 姓名:d5as6d5
70 芳龄:56565
71 职业:ad2a6sd6a
72 工资:26s5d6s2d6s2
73 
74 >>> 
注释的用法
  1 #############################################################################>>>
  2 
  3 #——————————数据运算——————
  4 #
  5 #——算数运算:——
  6 #
  7 #    运算符     描述                                                                         实例
  8 #
  9 #    +          加-两个对象相加________________________________________________________________a+b 输出结果 30    15+15=30
 10 #    -          减-得到负数或者一个数减去另一个数______________________________________________a-b 输出结果-10    20-30=-10
 11 #    *          乘-两个数相乘或者返回一个被重复若干次的字符串__________________________________a*b 输出结果200    20*10=200
 12 #    /          除-X除以Y______________________________________________________________________b/a 输出结果2      4/2=2
 13 #    %          取模-返回除法的余数____________________________________________________________b%a 输出结果0
 14 #    **         幂-返回X的Y次幂________________________________________________________________a**b 为10的20次方,输出结果100000000000000000000
 15 #    //         取整除-返回商的整数部分________________________________________________________9//2 输出结果 4      9.0//2.0  输出结果4.0
 16 #
 17 ##############################################################################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 18 #
 19 #——比较运算:——   false<假0>   true<真1>
 20 #
 21 #    运算符     描述                                                                          实例
 22 #
 23 #    ==         等于-比较对象是否相等__________________________________________________________(a==b)返回False
 24 #    !=         不等于-比较两个对象是否不相等__________________________________________________(a!=b)返回true
 25 #    <>         不等于-比较两个对象是否不相等__________________________________________________(a<>b)返回true   这个运算符类似  !=
 26 #    >          大于-返回X是否大于Y____________________________________________________________(a>b)返回False
 27 #    <          小于-返回X是否小于y。所有比较运算符返回1表示真,返回0表示假____________________(a<b)返回true
 28 #                     这分别与特殊的变量True和False等价.注意,这些变量名的大写。                                 
 29 #    >=         大于等于-返回x是否大于等于y____________________________________________________(a>=b)返回False
 30 #    <=         小于等于-返回x是否小于等于y____________________________________________________(a>=b)返回true
 31 #
 32 ##############################################################################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 33 #
 34 #——赋值运算:——
 35 #
 36 #    运算符      描述                                                                           实例
 37 #
 38 #    =           简单的赋值运算符_______________________________________________________________c  =  a + b 将 a + b 的运算结果赋值给 c
 39 #    +=          加法赋值运算符_________________________________________________________________c +=  a   等效于 c = c +  a
 40 #    -=          减法赋值运算符_________________________________________________________________c -=  a   等效于 c = c -  a                                                              
 41 #    *=          乘法赋值运算符_________________________________________________________________c *=  a   等效于 c = c *  a                                                                                                             
 42 #    /=          除法赋值运算符_________________________________________________________________c /=  a   等效于 c = c /  a                                                                                                             
 43 #    %=          取模赋值运算符_________________________________________________________________c %=  a   等效于 c = c %  a                                                                    
 44 #    **=         幂赋值运算符___________________________________________________________________c **= a   等效于 c = c ** a                                                                                                              
 45 #    //=         取整赋值运算符_________________________________________________________________c //= a   等效于 c = c // a                                                 _                                                             
 46 #
 47 ##############################################################################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 48 #
 49 #——逻辑值运算:——
 50 #
 51 #    运算符      描述                                                                           实例
 52 #
 53 #    and         布尔“与”-如果X为False,  X and Y  ,返回False,否则它返回Y的计算值_____________(K and J)返回true
 54 #    or          布尔“或”-如果X为True, 它返回True,否则它返回Y的计算值_________________________(K or J)返回true
 55 #    not         布尔“非”-如果X为True,返回False,如果X为False,它返回True______________________not(K and J)返回true                                                            
 56 #
 57 ##############################################################################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 58 #
 59 #——成员运算:——
 60 #
 61 #    运算符      描述                                                                           实例
 62 #
 63 #    in         如果在指定的序列中找到值返回True,否则返回False,________________________________x在y序列中,如果x在y序列中返回True
 64 #    not in     如果在指定的序列中没有找到值返回True,否则返回False,____________________________x不在y序列中,如果x在y序列中返回True                                                
 65 #
 66 ##############################################################################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 67 #
 68 #——身份运算:——
 69 #
 70 #    运算符      描述                                                                           实例
 71 #
 72 #    is         is是判断两个标识符是不是引用自一个对象__________________________________________x is y ,如果 id(x) 等于 id(y)  ,is 返回结果1
 73 #    is not     is not是判断两个标识符是不是引用自不同对象______________________________________x is not y ,如果 id(x) 不等于 id(y)  ,is not 返回结果1                                            
 74 #
 75 ##############################################################################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 76 #
 77 #——位运算:——
 78 #
 79 #    运算符     描述                                                                         实例
 80 #
 81 #    &          按位与运算符_________________________________________________________________(a&b)  输出结果  12 ,二进制解释: 0000 1100
 82 #    |          按位或运算符_________________________________________________________________(a|b)  输出结果  61 ,二进制解释: 0011 1100
 83 #    ^          按位异或运算符_______________________________________________________________(a^b)  输出结果  49 ,二进制解释: 0011 0001
 84 #    ~          按位取反算符_________________________________________________________________(~a)   输出结果 -61 ,二进制解释: 1100 0011  ,在一个有符号二进制数的补码形式。
 85 #    <<         左移动运算符_________________________________________________________________a<<2   输出结果 240 ,二进制解释: 1111 0000
 86 #    >>         右移动运算符_________________________________________________________________a>>2   输出结果  15 ,二进制解释: 0000 1111
 87 #
 88 ###>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
 89 #    按位取反运算规则(按位取反再加1)
 90 #!/usr/bin/python
 91   
 92 a = 60            # 60 = 0011 1100
 93 b = 13            # 13 = 0000 1101
 94 c = 0
 95   
 96 c = a & b;        # 12 = 0000 1100
 97 print "Line 1 - Value of c is ", c
 98   
 99 c = a | b;        # 61 = 0011 1101
100 print "Line 2 - Value of c is ", c
101   
102 c = a ^ b;        # 49 = 0011 0001 #相同为0,不同为1
103 print "Line 3 - Value of c is ", c
104   
105 c = ~a;           # -61 = 1100 0011
106 print "Line 4 - Value of c is ", c
107   
108 c = a << 2;       # 240 = 1111 0000
109 print "Line 5 - Value of c is ", c
110   
111 c = a >> 2;       # 15 = 0000 1111
112 print "Line 6 - Value of c is ", c
113 
114 
115 ##############################################################################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
116 #
117 #——运算符优先级:——
118 #
119 #    运算符                             描述                                                                           
120 #
121 #    **                                  ___指数(最高优先级)
122 #    ~ + -                               ___按位翻转,一元加号和减耗(最后两个的方法名为+@和-@)
123 #    * / % //                            ___乘,除,取模和取整数                                                         
124 #    + -                                 ___加法减法                                                                                                          
125 #    >> <<                               ___右移,左移运算符                                                                                                         
126 #    &                                   ___位 'AND'                                    
127 #    ^ |                                 ___位运算符                                                                                                  
128 #    <= < > >=                           ___比较运算符                                                          
129 #    < > == !=                           ___等于运算符
130 #    = %= /= //= -= += *= **=            ___赋值运算符
131 #    is  is not                          ___身份运算符                                                           
132 #    in  not in                          ___成员运算符                                                                                                         
133 #    not or and                          ___逻辑运算符                                                                                                       
134 # 
135 ######>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
136 #    * / + -  <一元操作符>
137 #    %[百分比,取余数]  **[幂运算操作符,比一元操作符左边高比一元操作符右边低]
138 #    //[地板除法]
139 #
140 #运算符优先级
141 #              幂运算          **
142 #             正负号        +*  -*
143 #         算术操作符    *  /  //   +  -
144 #         比较操作符   <  <=   >   >=   ==   != 
145 #         逻辑运算符       not  and  or
146 #
147 #比较操作符 < <=  >  >=  ==  !=   <根据表示的值进行比较>
148 #
149 #true  <1,真>   false  <0,假>
150 #逻辑符  and <左右都为true执行>  or <左右 或者为true执行>  not<相反执行>
151 
152 ###>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
153 
154 #三元操作符  语法: x if 条件 else y
155 #x,y = 4, 5
156 #if x < y:
157 #   small=x
158 #else:
159 #   small=y
160 #改进为
161 #small = x if x < y else y
162 #
163 #assert<断言,关键字,AssertionError,程序检查点>
164 
165 #true  <1,真>   false  <0,假>
166 #while<而,循环体,为true时执行>
167 #
168 #for<为,循环体>  in<在>
169 #
170 #for 目标 in 表达式
171 #   循环体
172 
173 ##############################################################################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
174 
175 三元运算
176 
177 result = 值1 if 条件 else 值2
178 如果条件为真:result = 值1
179 如果条件为假:result = 值2
180 
181 三、进制
182 
183 二进制,01
184 八进制,01234567
185 十进制,0123456789
186 十六进制,0123456789ABCDEF  二进制到16进制转换http://jingyan.baidu.com/album/47a29f24292608c0142399cb.html?picindex=1
187 计算机内存地址和为什么用16进制?
188 
189 为什么用16进制
190 1、计算机硬件是0101二进制的,16进制刚好是2的倍数,更容易表达一个命令或者数据。十六进制更简短,因为换算的时候一位16进制数可以顶4位2进制数,也就是一个字节(8位进制可以用两个16进制表示)
191 2、最早规定ASCII字符集采用的就是8bit(后期扩展了,但是基础单位还是8bit),8bit用2个16进制直接就能表达出来,不管阅读还是存储都比其他进制要方便
192 3、计算机中CPU运算也是遵照ASCII字符集,以16、32、64的这样的方式在发展,因此数据交换的时候16进制也显得更好
193 4、为了统一规范,CPU、内存、硬盘我们看到都是采用的16进制计算
194 
195 16进制用在哪里
196 1、网络编程,数据交换的时候需要对字节进行解析都是一个byte一个byte的处理,1个byte可以用0xFF两个16进制来表达。通过网络抓包,可以看到数据是通过16进制传输的。
197 2、数据存储,存储到硬件中是0101的方式,存储到系统中的表达方式都是byte方式
198 
199 3、一些常用值的定义,比如:我们经常用到的html中color表达,就是用的16进制方式,4个16进制位可以表达好几百万的颜色信息。
200 
201 ##############################################################################################>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
数据运算

 

posted @ 2017-05-03 17:13  莫柔落切  阅读(1688)  评论(7编辑  收藏  举报