Python ---Day1
一、Python的安装
windows 下的安装:
1、下载软件
下载地址:https://www.python.org/
2、安装软件:目前安装的是Python36版本
3、配置环境变量:
系统属性---高级---环境变量---

二、Hello World程序(第一个程序)
1、windows中的第一个程序

退出:exit()
2、linux中的第一个程序
#!/usr/bin/env python ------env是用来调用系统变量的,这里是调用系统中python变量


755: (4--r 读的权限 ,2---w 写的权限 ,1---x 执行权限)
7表示为:读写执行权限,5表示:读和执行权限。
第一个7表示所属用户,第一个5表示用户所属组权限,第二个5表示其他用户的权限。
执行程序:

三、变量(variable)
1、Python开发工具:
PyCharm ,暂时用5.0.3
2、变量:
理解:
存放东西的容器,为了方便以后调用。
变量定义的规则:
①、变量名只能是字母、数字或下划线的任意组合
②、变量名的第一个字符不能是数字
③、以下关键字不能生命为变量名
【'and','as','assert','break','class','continue','def','del','elif','else','except','exec','finally','for','from','global',
'if','import','in','is','lambda','not','or','pass','print','raise','return','try','while','with','rield'】
简单演示:
①、一个变量赋值,第二个变量等于等一个变量,然后改变第一个变量的值,第二个变量会出现什么变化。(不变,第二个变量还是第一次给第一个变量的赋值。)

打印出来的结果:

②③
3、常量
常量,与变量相反,意思:不变的量。
在Python中没有常量这个概念,我们通常使用大写的字母表示,如:PIE这个常量就要大写,其实是可以改变,我们默认不去改变。

四、字符编码(Character Encoding)与二进制(Binary)
1、字符编码:字符与二进制之间的转换代码
Python解释器在加载.py文件中的代码时,会对内容进行编码(默认ASCⅡ)
ASCⅡ(American Standard Code for information interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,
主要用于显示现代英语和其他西欧语言,其最多只能用8位来表示(一个字节),即:2**8=256-1,所以 ASCⅡ最多只能表示255个符号。
GB2312(1980):是 ASCⅡ的扩展,共收录了7445个字符,包括,6763个汉字和682个其他符号。
GBK1.0(1995):GB2312支持汉字太少演变而来,共收录21886个符号,分为汉字区和图形符号区,汉字包括21003个字符,
GB18030(2000):取代GBK1.0,共收录27484个汉字,同事还收录了藏文、蒙文、维吾尔文等主要的少数民族文字。现在PC平台必须支持GB18030,对嵌入式产品暂时不作要求,所以手机、MP3一般只支持GB2312
ASCⅡ、 GB2312(1980)、GBK到GB18030,这些编码方法是向下兼容的。
显然ASCⅡ码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode
Unicode(统一码、万国码、单一码),Unicode是为了解决传统的字符编码方案的局限而产生的,他为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定所有的字符和符号最少由16位来表示(2个字节),即:2**16=65536。
注:自出说的是最少2个字节,可能更多。
由于Unicode的出现导致了会让空间变大,以前用ASCⅡ时每个字符占一个字节,现在用Unicode每个字符最少占2个字节,这样就导致存相同的内容,编码不同,所占空间大小相差很大。随后就演变出了UTF-8,可伸缩的Unicode.
UTF-8:是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类: ascⅡ码中的内容用1个字节保存、欧洲的字符用2个字节保存、东亚的字符用3个字节保存。
所以,python解释器在加载》py文件中的代码时,会对内容进行编码(默认ascⅡ),如果是如下代码的话,就会报错:ascⅡ无法表示中文。
五、用户交互程序(User Interaction Program)
1、注释
①注释单行。 #被注释的内容
② 多行注释。 """ 被注释内容""" 三个单引号或者三个双引号。
③ 打印多行字符串。 多行注释类似。 """ 需要打印的字符串 """
2、用户输入 (Input)
username = input("username:")
password = input("password:")
print(username,password)
①字符串的拼接(拼接时引用的符号要一样,要么是双引号,要么是单引号。)

或者是这样

不能是这样:

②


错误提示:
TypeError: %d format: a number is required, not str
翻译:错误类型:%d格式:必须要是一个号码,不能是字符串。
提示这个错误就必须要将默认的字符串转换为整型。
下面解决方法:

代码如下:
1 name = input("Name:") 2 age = int(input("Age:")) #默认字符串,要转换为整型,integer缩写int 3 print(type(age)) #打印age的类型,默认是字符串,现在是整行。 4 job = input("Job:") 5 salary = input("Salary:") 6 info = ''' 7 ---------info of %s--------- 8 Name:%s 9 Age:%d 10 Job:%s 11 Salary:%s 12 ''' % (name,name,age,job,salary) 13 # Age:%d 这行是让年龄这样以整型的形式显示出来。 14 print(info)
下面是输出结果。

③ .format拼接


代码如下:
name = input("Name:")
age = int(input("Age:")) #默认字符串,要转换为整型,integer缩写int
job = input("Job:")
salary = input("Salary:")
info = '''
---------info of {_name}---------
Name:{_name}
Age:{_age}
Job:{_job}
Salary:{_salary}
'''.format(_name=name,
_age=age,
_job=job,
_salary=salary)
print(info)
.format拼接另一种方式:用数字表示

代码如下:
name = input("Name:")
age = int(input("Age:")) #默认字符串,要转换为整型,integer缩写int
job = input("Job:")
salary = input("Salary:")
info = '''
---------info of {0}---------
Name:{0}
Age:{1}
Job:{2}
Salary:{3}
'''.format(name,age,job,salary)
print(info)
六、if else 流程判断
1、第一个应用:
设计一个登陆器,输入用户名和密码输入正确提示欢迎进入该系统,如果输入错误提示无效用户名或密码。
、
密码隐藏执行结果:

密码正常显示执行结果:


相关代码:
#设计一个登陆器,输入用户名和密码输入正确提示欢迎进入该系统,如果输入错误提示无效用户名或密码。 #提取getpass这个模块 import getpass _username = "alex" _userpassword = "123" username = input("username:") #输入时隐藏密码:使用getpass.getpass模块,Import getpass是提取getpass这个模块 #getpass这个模块无法在Pycharm中应用,需要在cmd中运行。 userpassword = getpass.getpass("password:") #userpassword = input("password:") #下面是if else判断应用。 if _username ==username and _userpassword == userpassword: print("Welcome to the system!") else: print("Invalid username or password!")
2、if else 第二个应用:
猜年龄,猜的数值大,显示你猜大了。猜的数值小,显示你猜小了,猜的正确则显示猜的正确。

执行结果:

相关代码:
#猜年龄,猜的数值大,显示你猜大了。猜的数值小,显示你猜小了,猜的正确则显示猜的正确。 _age_of_oldboy = 56 #默认数值是字符型,要转换为整型。通过int() age_of_oldboy = int(input("age_of_oldboy:")) #如果输入的数值大了,显示你猜的大了,如果你输入的数值小了,显示你猜小了,多个判断用elif: #这两个都不成立,则显示猜的正确。这里通过else:来判断。 if age_of_oldboy > _age_of_oldboy: print("You guess a little oldder age!") elif age_of_oldboy < _age_of_oldboy: print("You guess a little younger age!") else: print("You guessed right!")
七、while循环的用法
1、while简单用法:
使用while一直打印数值。

相关代码:
#while用法: #从0开始计数。 count = 0 #while----当什么的时候, 下面一句就是当为真时执行下面的语句。永远为真,所以会一直执行下面语句 while True: print("count:",count) #打印计数数值, count = count + 1 #或者count += 1 ,计数器等于计数器加上1.执行这个会一直加1
2、while用法2
例:猜年龄,一共只能猜三次,三次之内猜对了提示猜对了,猜大了提示猜大了,猜小了提示猜小了,如果超过三次则提示输入的次数太多。

相关代码:
#猜年龄,一共只能猜三次,三次之内猜对了提示猜对了,猜大了提示猜大了,猜小了提示猜小了, #如果超过三次则提示输入的次数太多。 _age_of_oldboy = 56 count = 0 #当输入三次的以内时执行下面的语句。 while count<3: age_of_oldboy = int(input("age_of_oldboy:")) if age_of_oldboy > _age_of_oldboy: print("You guessed older!") elif age_of_oldboy < _age_of_oldboy: print("You guessed lesser!") else: print("You guessed right!") break count = count + 1 #当超过三次时执行下面的命令。 else: print("You guess many times")
3、while循环用法3:
#猜年龄,一共能猜三次,三次之内猜对了提示猜对了,猜大了提示猜大了,猜小了提示猜小了,3次的时候提示是否需要继续,继续按任意键,不继续则按n.使用while循环来实现。

相关代码:
#猜年龄,一共能猜三次,三次之内猜对了提示猜对了,猜大了提示猜大了,猜小了提示猜小了, #三次的时候提示是否需要继续,继续按任意键,不继续则按n. #使用while循环来实现。 _age_of_oldboy = 56 count = 0 #当输入三次的以内时执行下面的语句。 while count<3: age_of_oldboy = int(input("age_of_oldboy:")) if age_of_oldboy > _age_of_oldboy: print("You guessed older!") elif age_of_oldboy < _age_of_oldboy: print("You guessed lesser!") else: print("You guessed right!") break count = count + 1 #达到3次,提示是否继续猜,如果继续按任意键,不继续则按n。 if count == 3: continue_confirm = input("Do you keep guessing!") if continue_confirm != "n": count = 0
八、for循环:
1、for循环的简单格式:
显示数字0到4 ,5个数字。

相关代码:
#for循环基本格式 #显示数字0到4 ,5个数字。 for i in range(5): print("number:",i)
2、for循环的简单格式2:
打印偶数,包括0

相关代码:
#打印偶数,包括0 for i in range(0,10,2): print("number:",i)
3、for循环的简单应用:
猜年龄,一共只能猜三次,三次之内猜对了提示猜对了,猜大了提示猜大了,猜小了提示猜小了,如果超过三次则提示输入的次数太多。使用for循环来实现。

相关代码:
#猜年龄,一共只能猜三次,三次之内猜对了提示猜对了,猜大了提示猜大了,猜小了提示猜小了, #如果超过三次则提示输入的次数太多。 #使用for循环来实现。 _age_of_oldboy = 56 #count = 0 1、for循环这个不需要。 #当输入三次的以内时执行下面的语句。 #while count<3: 2、for循环这个不需要。 for age_of_oldboy in range(3): age_of_oldboy = int(input("age_of_oldboy:")) if age_of_oldboy > _age_of_oldboy: print("You guessed older!") elif age_of_oldboy < _age_of_oldboy: print("You guessed lesser!") else: print("You guessed right!") break #count = count + 1 3、for循环这个不需要。 #当超过三次时执行下面的命令。 else: print("You guess many times")
3、for循环套循环。

执行结果:

相关代码:
#循环套循环 for i in range(5): print("---------",i,"---------") for j in range(3): print(j)
九、continue应用
continue应用------结束本次循环,不继续向后执行,而是从继续当前循环。
1、案例一:清晰的看出continue的作用。

执行结果:

相关代码:
#continue应用------结束本次循环,不继续向后执行,而是从继续当前循环。 for i in range(10): if i < 5 : print(i) else: print("continue",i) continue print("hehe!")
posted on 2017-03-30 23:22 aptech2017 阅读(149) 评论(0) 收藏 举报
浙公网安备 33010602011771号