Day01第一天 Python基础一

 

变量

就是将一些运算的中间结果暂时存在内存中,以便后续代码的调用.

>命名规则:

1,只能以字母,数字,下划线自由组合,且,不能以数字开头.
2,不能是 Python 中的关键字.
3,要具有可描述性.
4,不要用中文命名.

常量

>一直不变的量

因为 Python 中没有常量的概念,所以,为了区别常量与变量,常量的命名除了与变量命名

规则相同外,所有字母全是大写,以此来区分常量与变量. 

比如: 

π # PAI = 3.14
建国日期 # BIR_OF_CHINA = 1949

注释

方便自己,方便他人理解代码,一定要养成写注释的习惯


>单行注释:

#


>多行注释:

'' 内容 '''或者""" 内容 """

基础数据类型

Ps.判断数据类型的方法是 typy()

>整数类型(int)

可以进行 + _ * / ** %
int(整型)
在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
>字符串转化成数字:int(str) 条件:str 必须是数字组成的.
>数字转化成字符串:str(int)

>字符串类型(str)。

>在Python中,加了引号的字符都被认为是字符串!

1 >>> name = "Alex Li" #双引号
2 >>> age = "22" #只要加引号就是字符串
3 >>> age2 = 22 #int
4 >>> 
5 >>> msg = '''My name is taibai, I am 22 years old!''' #我擦,3个引号也可以
6 >>> 
7 >>> hometown = 'ShanDong' #单引号也可以

>那单引号、双引号、多引号有什么区别呢? 让我大声告诉你,单双引号木有任何区别,只有下面这种情况 你需要考虑单双的配合

 1 msg = "My name is Alex , I'm 22 years old!" 

>多引号什么作用呢?作用就是多行字符串必须用多引号

 1 msg = '''
 2 今天我想写首小诗,
 3 歌颂我的同桌,
 4 你看他那乌黑的短发,
 5 好像一只炸毛鸡。
 6 '''
 7 print(msg)
 8 
 9 今天我想写首小诗,
10 歌颂我的同桌,
11 你看他那乌黑的短发,
12 好像一只炸毛鸡。

>字符串拼接

数字可以进行加减乘除等运算,字符串呢?让我大声告诉你,也能?what? 是的,但只能进行"相加"和"相乘"运算。

 1 >>> name
 2 'Alex Li'
 3 >>> age
 4 '22'
 5 >>> 
 6 >>> name + age #相加其实就是简单拼接
 7 'AlexLi22'
 8 >>> 
 9 >>> name * 10 #相乘其实就是复制自己多少次,再拼接在一起
10 ' AlexLiAlexLiAlexLiAlexLiAlexLiAlexLiAlexLiAlexLiAlexLiAlexLi'

注意,字符串的拼接只能是双方都是字符串,不能跟数字或其它类型拼接

 1 >>> type(name),type(age2)
 2 (<type 'str'>, <type 'int'>)
 3 >>> 
 4 >>> name
 5 'Alex Li'
 6 >>> age2
 7 >>> name + age2
 8 Traceback (most recent call last): 9 File "<stdin>", line 1, in <module> 10 TypeError: cannot concatenate 'str' and 'int' objects #错误提示数字 和 字符 不能拼接

>布尔值(True,False)。

>布尔类型很简单,就两个值 ,一个True(真),一个False(假), 主要用记逻辑判断

但其实你们并不明白对么? let me explain, 我现在有2个值 , a=3, b=5 , 我说a>b你说成立么? 我们当然知道不成立,
但问题是计算机怎么去描述这成不成立呢?或者说a< b是成立,计算机怎么描述这是成立呢?
没错,答案就是,用布尔类型 

1 >>> a=3
2 >>> b=5
3 >>> 
4 >>> a > b #不成立就是False,即假
5 False
6 >>> 
7 >>> a < b #成立就是True, 即真
8 True

用户交互(程序交互)


1,等待输入
2,将你输入的内容赋值给了前面的变量
3,input 出来的数据类型全都是字符串(str)

>执行脚本就会发现,程序会等待你输入姓名后再往下继续走。

1 # 将用户输入的内容赋值给 name 变量
2 name = input("请输入用户名:") 
3 # 打印输入的内容
4 print(name)

>可以让用户输入多个信息,如下

1 name = input("What is your name?")
2 age = input("How old are you?")
3 hometown = input("Where is your hometown?")
4 
5 print("Hello ",name , "your are ", age , "years old, you came from",hometown)

流程控制之--if语句

>格式

-------------------------------------------------------------------------------------------
Ps.缩进
if代码里,每个条件的下一行都缩进了4个空格,这是为什么呢?这就是Python的一大特色,强制缩进,
目的是为了让程序知道,每段代其它的语言里,大多通过{}来确定代码块,比如C,C++,Java,Javascript都是这样,
看一个JavaScript代码的例子
-------------------------------------------------------------------------------------------

1 >JavaScript代码的例子:
2 var age = 56
3   if ( age < 50){
4   console.log("还能折腾")
5   console.log('可以执行多行代码')
6 }else{
7   console.log('太老了') 8 }

-------------------------------------------------------------------------------------------
在有{}来区分代码块的情况下,缩进的作用就只剩下让代码变的整洁了。

Python是门超级简洁的语言,发明者定是觉得用{}太丑了,所以索性直接不用它,那怎么能区分代码块呢?答案就是强制缩进。

Python的缩进有以下几个原则:

顶级代码必须顶行写,即如果一行代码本身不依赖于任何条件,那它必须不能进行任何缩进
同一级别的代码,缩进必须一致
官方建议缩进用4个空格,当然你也可以用2个,如果你想被人笑话的话。  
-------------------------------------------------------------------------------------------

if 条件: 冒号的作用是 条件与结果分开,程序一读到冒号就知道冒号前面是条件,后面是结果.
此处要缩进 #这是格式

#第一种 单分支

格式:

if 条件:
满足条件后要执行的代码

例子:

1 if 5 > 4 : #如果这个条件为True,那么执行下面的语句.(if True : #这也是一种条件写法)
2     print(666) #条件为真,执行这条代码.

-------------------------------------------------------------------------------------------


#第二种 (双分支)

格式:

if 条件:
满足条件执行代码
else:
if条件不满足就走这段
例子1:

Age = 48

if Age > 50 :
    print("Too old, time to retire..")
else:
    print("还能折腾几年!")

例子2:

1 if 4 > 3 : #如果这个条件为True,那么执行下面的语句.(if True : #这也是一种条件写法)
2     print('我请你吃饭') #条件为真,执行这条代码.
3 else: #条件为假时,执行这段代码.
4     pirnt('你叫啥?')

-------------------------------------------------------------------------------------------

#第三种 (多分支)

格式:

 1 if 条件:
 2     满足条件执行代码
 3 elif 条件:
 4     上面的条件不满足就走这个
 5 elif 条件:
 6  上面的条件不满足就走这个 7 elif 条件: 8  上面的条件不满足就走这个 9 else: 10 上面所有的条件不满足就走这段

>例子1:

 1 num = intput('请输入您猜的数字')
 2 if num == '1' : #
 3     print('一起抽烟') #
 4 
 5 elif num == '2' :#
 6     print('一起喝酒?')
 7 
 8 elif num == '3' :#
 9     print('一起喝酒?')
10 
11 else:
12     print('你输错了')

>例子2:猜年龄的游戏

 1 age_of_oldboy = 48
 2 
 3 guess = int(input(">>:"))
 4 
 5 if guess > age_of_oldboy :
 6     print("猜的太大了,往小里试试...")
 7 
 8 elif guess < age_of_oldboy :
 9     print("猜的太小了,往大里试试...")
10 
11 else: 12 print("恭喜你,猜对了...")

上面的例子,根据你输入的值不同,会最多得到3种不同的结果

>例子3:再来个匹配成绩的小程序吧,成绩有ABCDE5个等级,与分数的对应关系如下

A 90-100
B 80-89
C 60-79
D 40-59
E 0-39
要求用户输入0-100的数字后,你能正确打印他的对应成绩

 1 score = int(input("输入分数:"))
 2 
 3 if score > 100:
 4     print("我擦,最高分才100...")
 5 elif score >= 90:
 6     print("A")
 7 elif score >= 80: 8 print("B") 9 elif score >= 60: 10 print("C") 11 elif score >= 40: 12 print("D") 13 else: 14 print("太笨了...E")

这里有个问题,就是当我输入95的时候 ,它打印的结果是A,但是95 明明也大于第二个条件elif score >=80:呀, 为什么不打印B呢?
这是因为代码是从上到下依次判断,只要满足一个,就不会再往下走啦!  
-------------------------------------------------------------------------------------------

#第四种 (嵌套)

>例子四:

1 name = input('请输入你的名字:')
2 age = input('请输入你的年龄:')
3 if name == '小二':
4     if age == "18":
5         print('你18岁了')
6 else: 7 print('年龄你猜的不对哟!') 8 else: 9 print('我都不知道你说的',"'",name,"'",'是谁,怎么告诉你他/她几岁!') 

流程控制之--while 循环语句

格式:

while 条件:#这个条件只要是能判断出真假的,都可以.
循环体

>例子1:无限循环

1 while True: #当条件一直为真时,且没有退出条件,那么将会无限循环.
2     print('你')
3     print('我')
4     print('他')#代码读到这时,因为没有退出条件语句,所以返回第一行 while ,判断还是真,又进入循环.
5 print('你,我,他') #此条将不会被打印.

>例子2:条件不满足,终止循环

1 1 count = 1
2 2 flag = True #此为:标志位
3 4 while flag:
4 5     print(count)
5 6     count = count + 1
6 7     if count > 100
7 8         flag = false #此为标志位    

>例子2-1:条件不满足,终止循环

1 count = 1
3 while count <= 100:
4   print(count)
5   count = count + 1 #或都也可以写成 count += 1

>例子2-2:从1加到100的计算

1 count = 1
2 sum = 0
4 while count <= 100: 
5   sum += count #或都也可以写成 sum = sum + count 
6   count = count + 1 #或都也可以写成 count += 1
7   print (sum)

>例子3:break 跳出,终止

1 while True: #当条件一直为真时,且没有退出条件,那么将会无限循环.
2     print('你')
3     print('我')
4     break #当出线跳出条件时,停止当前循环,继续循环之后的代码.
5     print('他')#这段代码不打印.该循环因为 break 的跳出,所以.不执行此代码
6 print('你,我,他') #此条将会被打印.跳出循环后,执行了这段代码

>例子3-1:break 从1打印到100

1 count = 1
3 while True: 
4   print(count)
5   count += 1
6   if count >100:
7   break

>例子4:continue #结束本次循环,继续下次循环

1 count = 1
3 while count < 10 : #循环条件
4   print(count) #打印变量 count的值
5     continue #结束本次循环,返回 while 继续下一次循环
6   count += 1 #这段不会执行.因为上面一直再死循环


>例子4-1:continue #1-10这10个数字.除了5-8,其它的打印出来

1 count = 0
2 while count < 10 : #循环条件
3   count += 1
4   if count > 4 and count < 9 :
5     continue
6   print('loop',count)
7 print ('循环结束!')

猜你喜欢

转载自www.cnblogs.com/guanshou/p/11922628.html