Day1:python常、变量、循环
一、python是一门什么样的语言
注:python在linux中执行,顶部加:#!/usr/bin/env python
1、编译型:c、c++
2、解释性:python
print('hello world')
3、在cmd中退出python命令:exit()
二、变量
1、python IDE:PyCharm
(1)使用pycharm新建python文件的时候,默认在.py文件顶部生成一段自己想要的文字
2、定义:变量只能是字母、数字、下划线组合,不能以数字开头,不能以系统关键字作为变量
注:不能起中文变量名,不能起pinyin或者a这种无意义的变量名
# Author:licy name="licy" name2=name print("my name is",name,name2) #my name is licy licy name="Pao Che Ge" print(name,name2) #Pao Che Ge licy
例如以下变量名:
gf_of_name #下划线隔开
GfOfName #驼峰命名
3、常量:python中不支持常量,但是大写变量名可以表示常量,但是它可以改,例如:
PIE=3.1415926
三、字符编码
1、ASCII:美国标准信息交换代码,最多只能用8位来表示(一个字节),即2**8=256-1,所以ASCII最多只能表示255个符号
2、GB2312:1980年出现,有7000多个汉字
3、GBK:1995年(当今中国常用的编码)20000+个汉字
4、GB18030:2000年,收录27000多个汉字
ASCII无法将世界各地的文字和符号全部表示,不能够统一,所以就需要有一种可以代表所有字符和编号的编码:Unicode
5、Unicode:统一码、万国码、单一码,它存的东西多,占空间大,ASCII中英文字符一个字符占1个字节(8位),Unicode,无论英文或者中文,统一占2个字节(16位),为了解决这个问题,产生下一个格式,可以边长的,UTF-8
5、UTF-8:存英文的占1个字节,存中文3个字节
四、python go
1、python2和python3的区别
(1)python2:默认以ASCII处理
要想在python2中写中文,必须在第一行写一句话,如下: # -*- coding:utf-8 -*- # Author:licy name="中国" print(name)
(2)python3:字符集默认支持中文,按UTF-8处理
# Author:licy name="中国" print(name)
2、注释
单行注释:#
多行注释:''' 或者 """
# Author:licy ''' name="中国" print(name) '''
3、打印多行,也用'''
# Author:licy str=''' name="中国" print(name) ''' print(str)
4、打印多行,直接用两个单引号就可以(单双引号效果完全一样,与php不同)
# Author:licy str="I'm licy" print(str)
5、用户输入
# Author:licy username=input("请输入用户名:") password=input("请输入密码:") print(username,password)
6、格式化输出
(1)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy name=input("name:") age=input("age:") job=input("job:") salary=input("salary:") info=''' ----info of'''+name+'''----- Name:'''+name+''' Age:'''+age+''' Job:'''+job+''' Salary:'''+salary print(info)
(2)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy name=input("name:") age=input("age:") job=input("job:") salary=input("salary:") info=''' ----info of%s----- Name:%s Age:%s Job:%s Salary:%s ''' %(name,name,age,job,salary) print(info)
注:%s 代表string %d 数字 %f 浮点
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy name=input("name:") age=int(input("age:"))#integer print(type(age))#打印一个变量的数字类型 job=input("job:") salary=input("salary:") info=''' ----info of%s----- Name:%s Age:%d Job:%s Salary:%s ''' %(name,name,age,job,salary) print(info)
注:str(age)#转换成字符串
(3)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy name=input("name:") age=int(input("age:"))#integer 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)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy name=input("name:") age=int(input("age:"))#integer 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)
7、密文
此例子pycharm不能正常执行,必须手动调用文件执行
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy import getpass #在pycharm中不好使 username=input("username:") password=getpass.getpass("password:") print(username,password)
8、流程控制,逻辑判断 if
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy import getpass #在pycharm中不好使 _username='lcy' _password='123456' username=input("username:") password=input("password:") if(username==_username and password==_password): print("welcome {name}".format(name=username)) else: print("用户名或者密码不正确")
注:IndentationError:缩进错误
9、猜年龄 elif
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy lcy=24 guess_age=int(input("guess age:")) if lcy==guess_age: print("猜对") elif guess_age>lcy: print("猜大了") else: print("猜小了")
10、猜年龄 while
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy lcy=24 count=0 while count<3: guess_age=int(input("guess age:")) if lcy==guess_age: print("猜对") break elif guess_age>lcy: print("猜大了") else: print("猜小了") count+=1 else: print("3次已经用完")
11、猜年龄 for
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy lcy=24 for i in range(3): guess_age=int(input("guess age:")) if lcy==guess_age: print("猜对") break elif guess_age>lcy: print("猜大了") else: print("猜小了") else: print("3次已经用完")
12、隔数打印数
# Author:licy for i in range(0,10,2): print('loop',i)
13、无敌猜数
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy lcy=24 count=0 while count<3: guess_age=int(input("guess age:")) if lcy==guess_age: print("猜对") break elif guess_age>lcy: print("猜大了") else: print("猜小了") count+=1 if count==3: coun=input("是否继续:") if coun!='n': count=0
14、continue:跳出本次循环进入下一次循环
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# Author:licy for i in range(10): if i<5: continue print('loop',i)