【python初学笔记】基础知识
一、变量
#_*_coding:utf-8_*_
name = lxp
age = 21
分别声明了姓名和年龄两个变量。
变量定义的规则:
-
- 变量名只能是 字母、数字或下划线的任意组合
-
- 变量名的第一个字符不能是数字
-
例如:正确命名message_1,greeting_message,错误1_message,greeting message。
-
-
以下关键字不能声明为变量名(内部已经定义,每一个都会学到)
[‘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’, ‘yield’]
-
注意
在变量命名是应该简短具有描述性。如name student。
在python中没有常量
变量的赋值
变量的赋值
name = "Lxp"
name2 = name
print("My name is",name,name2)
name="Yy"
print(name,name2)
变量的赋值和指向 关系,第一行name赋值lxp,name2等于name赋值也为lxp,在第5行时将name重新赋值name2为改变(可以自己试试结果)
在python中没有常量的概念!所以一般表示常量用大写!所以在变量定义是尽量避免大写!
二、字符编码
python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill)
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节)。(图片来自百度百科)
因为ascii码无法表示中文,所以在用python写中文时,就需要新出一种可以代表所有字符和符号的编码,即:Unicode。(具体解释参考书吧,打字太累,了解知识!)
#!/usr/bin/env python
print "你好,世界"
这样会报错!正确如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
print "你好,世界"
应该告诉python解释器用什么编码来执行源码!
三、注释
在任何语言的注释中都分为两类单行注释,多行注释。在python中
- 单行注释: #注释内容
- 多行注释: ‘’’ 注释内容 ‘’’
四、用户输入
这里采用input来完成输入。
name = input("name:")
age = input("age:")
job = input("job:")
这里分别输入了name,age,job。
这里很简单但是有一点需要注意,在输入age是虽然我们看到的是数字!但是默认是字符串,所以我们要得到整数是需要对其进行强制转换。
name = input("name:")
age = int(input("age:"))
#默认输入为字符串形式所以需要强制转换
job = input("job:")
print(type(age),type(str(age)))
注意强制转换的格式,这里我们只需要打印出来强制转换后的类型就可以很好的观察到。
五、字符串的拼
这里用到上面的三个输入字符串的拼接有三种方法!
- 用+将字符串之间连接(不建议使用)。
- 用%s
name = input("name:")
age = input("age:")
job = input("job:")
info1= '''
-------------- info1 of %s ---------------
Name:%s
Age:%s
Job:%s
'''%(name,name,age,job)
print(info1)
%s表示字符串,%d数字跟c语言差不多用来占位输出。
- 定义新的变量进行赋值
name = input("name:")
age = input("age:")
job = input("job:")
info2= '''
-------------- info2 of {_name} -----------------
Name:{_name}
Age:{_age}
Job:{_job}
'''.format(_name = name,
_age = age,
_job = job)
print(info2)
可以看出在info2中定义了新的_name,用来赋值完成字符串的拼接(自己理解的可能不太对)
- 补充一个方法,但是跟上面的很相似。
name = input("name:")
age = input("age:")
job = input("job:")
info3= '''
-------------- info3 of {0} -----------------
Name:{0}
Age:{1}
Job:{2}
'''.format(name,age,job)
print(info3)
这里用0123来占位,输出。
六、循环和if语句
我学习了两种循环方式。
while循环
#当真时一直执行
count = 0
while True:
print("count:",count)
count = count + 1
if count == 1000:
break
循环需要定义一个数来计算循环次数,自加是一定需要的 #count+=1也可这样写。
for循环
for i in range(10):
print("loop",i)
for循环相对代码简单,次数直接在range中有体现。
for循环提示:
for i in range(0,10,3):#间隔三个跳一次
print("loop",i)
这里for()里有三个数第一个0表示从0 开始,10表示循环次数,3指的是输出间隔,这样打印出的结果就是0,3,6,9,自己验证吧!
continue,break在循环中的使用
- break指跳出循环。
count = 0
while True:
print("count:",count)
count = count + 1
if count == 1000:
break
- continue指跳出本次循环,进入下次循环。
for i in range(0,10):
if i <3:
print("loop",i)
else :
continue
print("hehe")
这里可以根据打印出来的 i值和hehe的个数设置断点来观察判断。
if语句
if语句的逻辑相对其他语言的逻辑和格式更加简明,只需要空格对了就可以,不用想c一样有大括号。
age_of_lxp = 21
guess_age = int(input("guss age:"))
if guess_age == age_of_lxp:
print("yes,you got it.")
break
elif guess_age > age_of_lxp:
print("think smaller...")
else:
print("think bigger")
这里用if来写了一个猜年龄的过程,if a==b:可理解为如果a等于b则…
else if在python中是没有这个说法的是用的elif来代替,用法跟if一样需要加关系和冒号。
最后一个直接用else:即可不用写条件关系。
提示 python里的else也可以在循环中使用,表示除了该循环外的!这个等会实例中会体现。
七、小练习。
练习一
输入用户名跟原有用户名进行比较,如果正确则表示欢迎,如果错误进行提示!
username1 = "lxp"
password1 = "lxp123"
username = input("username:")
password = input("password:")
if username1 == username and password1 == password:
print("欢迎登陆,welcom user {name1} login...".format(name1=username))
else:
print("您输入的用户名是{name2},输入的密码是{password2},Invaid username or password!".format(name2=username,password2=password))
复习知识点:
- 变量命名
- 写入
- 字符串的拼接
- if语句的使用
练习二
猜年龄,用户输入年龄,与给定的年龄进行比较,如正确提示正确,猜大了提示试试小一点,猜小了提示试试大一点。用户只能进行三次,三次猜不对则跳出并提示次数多了。
- 使用for循环完成。
age_of_lxp = 56
for i in range(3):
guess_age = int(input("guss age:"))
if guess_age == age_of_lxp:
print("yes,you got it.")
break
elif guess_age > age_of_lxp:
print("think smaller...")
else:
print("think bigger")
else:
print("you have tried too many times ..fuck off")
- 使用while循环完成。
age_of_lxp = 56
count = 0
while count<3:
guess_age = int(input("guss age:"))
if guess_age == age_of_lxp:
print("yes,you got it.")
break
elif guess_age > age_of_lxp:
print("think smaller...")
else:
print("think bigger")
count +=1
else:
print("you have tried too many times ..fuck off")
复习知识点:
- if语句
- break的使用
- 循环语句
- else在循环中的使用。else在循环中使用时,指的是循环不是被跳出,也是就没有进行break,才会执行else否则不会执行else。
练习三
在二的基础上对三次进行提示,如果还想继续玩,则可以按任意键进行,若不想继续猜,则按N退出!
age_of_lxp = 56
count = 0
while count<3:
guess_age = int(input("guss age:"))
if guess_age == age_of_lxp:
print("yes,you got it.")
break
elif guess_age > age_of_lxp:
print("think smaller...")
else:
print("think bigger")
count +=1
if count == 3:
countine_confirm = input("do you want to keep guessing?")
if countine_confirm !="n":
count = 0
else:
print("you have tried too many times ..fuck off")
同样这是用whlie来完成,也可尝试用for完成。
在循环内部,进行提示,当次数等于3时进行输入提示!这里没有要求输入什么所以可以不写,也可规定,只有在if语句中写出即可,同样要N是表示不想继续,只用完后判断操作!
八、总结
在本科期间有c的基础后python的学习更加顺利吧,有好多东西互通的,而且python的语法随意,简单。如果有基础的朋友会很容易上手的,我是边看书边看视频的,视频在B站上找的。然后为了巩固自己学的,才写的这个。所有有任何侵权的地方请联。如果有大佬也可带带我!哈哈加油加油,下周继续努力!!!!!!!