python基础
Posted xyn123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础相关的知识,希望对你有一定的参考价值。
windows:
1
2
3
4
5
6
7
|
1 、下载安装包 https: / / www.python.org / downloads / 2 、安装 默认安装路径:C:\\python27 3 、配置环境变量 【右键计算机】 - - 》【属性】 - - 》【高级系统设置】 - - 》【高级】 - - 》【环境变量】 - - 》【在第二个内容框中找到 变量名为Path 的一行,双击】 - - > 【Python安装目录追加到变值值中,用 ; 分割】 如:原来的值;C:\\python27,切记前面有分号 |
windows下安装Python(自动添加环境变量)以3,.5版本的举例:
1,官网下载:https://www.python.org/downloads/windows/
2,选择版本。
3,自动添加环境变量。
4,更改完成。
5,点击安装
3. 运行python代码
在d盘下创建一个t1.py文件内容是:
print(‘hello world‘)
打开windows命令行输入cmd,确定后 写入代码python d:t1.py
即:终端---->cmd-----> python 文件路径。 回车搞定~
4 解释器
#!/usr/bin/env python
运行python程序时要指定解释器。
5 注释
当行注释:# 被注释内容
多行注释:‘‘‘被注释内容‘‘‘,或者"""被注释内容"""
6 变量
变量:把程序运行的中间结果临时的存在内存里,以便后续的代码调用。
6.1、声明变量
|
name = "taibai" |
上述代码声明了一个变量,变量名为: name,变量name的值为:"taibai"
变量的作用:代指内存里某个地址中保存的内容。
6.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‘, ‘yield‘] - 变量的定义要具有可描述性。
一般推荐变量定义要通俗易懂,规整。例如:age_of_oldboy = 56 、number_of_students = 80
6.3、变量的赋值
name1 = "wupeiqi" name2 = "alex"
常量即指不变的量,在程序运行过程中不会改变的量。约定俗成用变量名全部大写代表常量。例如,AGE_OF_OLDBOY = 56
8,程序交互
# 将用户输入的内容赋值给 name 变量 name = input("请输入用户名:") # 打印输入的内容 print(name)
执行脚本就会发现,程序会等待你输入姓名后再往下继续走。
9 格式化输出
现有一需求,问用户的姓名、年龄、工作、爱好 ,然后打印成以下格式
------------ info of Alex Li ----------- Name : Alex Li Age : 22 job : Teacher Hobbie: girl ------------- end -----------------
有三种方法可以实现此需求:
(1)
name = input(‘name:‘)
age = int(input(‘age:‘))
print(type(age))
job = input(‘job:‘)
salary = input(‘salary:‘)
info = ‘‘‘
- - - - info of {0} - - - -
name:{0}
age:{1}
job:{2}
salary:{3}
‘‘‘ .format(name,age,job,salary)
(2)
info2 = ‘‘‘
- - - info of {_name}- - -
name:{_name}
jog:{_job}
age:{_age}
salary:{_salary}
‘‘‘.format(_name=name,
_age=age,
_job=job,
_salary=salary,
)
print(info2)
(3)由于里面的 一些信息是需要用户输入的,无法预先知道,因此可以先放置个占位符,再把字符串里的占位符与外部的变量做个映射关系就好啦
name = input("Name:") age = input("Age:") job = input("Job:") hobbie = input("Hobbie:") info = ‘‘‘ ------------ info of %s ----------- #这里的每个%s就是一个占位符,本行的代表 后面拓号里的 name Name : %s #代表 name Age : %s #代表 age job : %s #代表 job Hobbie: %s #代表 hobbie ------------- end ----------------- ‘‘‘ %(name,name,age,job,hobbie) # 这行的 % 号就是 把前面的字符串 与拓号 后面的 变量 关联起来 print(info)
%s就是代表字符串占位符,除此之外,还有%d,是数字占位符, 如果把上面的age后面的换成%d,就代表你必须只能输入数字啦
运行后出现了错误,%d需要一个数字,而不是str, 我们输入的是数字呀,查看数据类型的方法:type()
age = input("Age:")
print(type(age))
执行输出是
Age:22
<class ‘str‘>
这是因为input接收的所有输入默认都是字符串格式!
要想程序不出错,你可以把str转成int
age = int( input("Age:") )
msg = "我是%s,年龄%d,目前学习进度为80%"%(‘金鑫‘,18) print(msg)
这样会报错,因为在格式化输出里,你出现%默认为就是占位符,此时就需要输入80%%,告诉Python解释器这只是一个单纯的%,而不是占位符。
msg = "我是%s,年龄%d,目前学习进度为80%%"%(‘金鑫‘,18)
10,基本运算符
运算符
运算按种类可分为算数运算、比较运算、逻辑运算、赋值运算、成员运算、身份运算、位运算。
以下假设变量:a=10,b=20
针对逻辑运算的进一步研究:
1,优先级关系为( )>not>and>or,同一优先级从左往右计算。
2 , x or y , x为真,就为x,否则为y;
x and y, x为真,就为y,否则为x。
in,not in :
判断子元素是否在原字符串(字典,列表,集合)中:
11,流程控制语句
(1)if...else 语句
单分支
if 条件: 满足条件后要执行的代码
双分支
""" if 条件: 满足条件执行代码 else: if条件不满足就走这段 """ AgeOfOldboy = 48 if AgeOfOldboy > 50 : print("Too old, time to retire..") else: print("还能折腾几年!")
这里必须要插入这个缩进的知识点
Python的一大特色,就是强制缩进,目的是为了让程序知道,每段代码依赖哪个条件。
Python的缩进有以下几个原则:
- 顶级代码必须顶行写,即如果一行代码本身不依赖于任何条件,那它必须不能进行任何缩进
- 同一级别的代码,缩进必须一致
- 官方建议缩进用4个空格。
多分支
if...else ...可以有多个分支条件
if 条件: 满足条件执行代码 elif 条件: 上面的条件不满足就走这个 elif 条件: 上面的条件不满足就走这个 elif 条件: 上面的条件不满足就走这个 else: 上面所有的条件不满足就走这段
来个匹配成绩的小程序吧,成绩有ABCDE5个等级,与分数的对应关系如下
A 90-100
B 80-89
C 60-79
D 40-59
E 0-39
要求用户输入0-100的数字后,你能正确打印他的对应成绩
score = int(input("输入分数:")) if score > 100: print("我擦,最高分才100...") elif score >= 90: print("A") elif score >= 80: print("B") elif score >= 60: print("C") elif score >= 40: print("D") else: print("太笨了...E")
注意,只要匹配一项就不会再往下执行!!!!
(2)while循环。
*1,基本循环
while 条件: # 循环体 # 如果条件为真,那么循环体则执行 # 如果条件为假,那么循环体不执行 |
*2,循环中止语句
如果在循环的过程中,因为某些原因,你不想继续循环了,怎么把它中止掉呢?
- break用于完全结束一个循环,跳出循环体执行循环后面的语句
- continue只是终止本次循环,接着还执行后面的循环
例子:break
count = 0 while count <= 100 : #只要count<=100就不断执行下面的代码 print("loop ", count) if count == 5: break count +=1 #每执行一次,就把count+1,要不然就变成死循环啦,因为count一直是0 print("-----out of while loop ------")
输出
loop 0 loop 1 loop 2 loop 3 loop 4 loop 5 -----out of while loop ------
例子:continue
count = 0 while count <= 100 : count += 1 if count > 5 and count < 95: #只要count在6-94之间,就不走下面的print语句,直接进入下一次loop continue print("loop ", count) print("-----out of while loop ------")
输出
loop 1 loop 2 loop 3 loop 4 loop 5 loop 95 loop 96 loop 97 loop 98 loop 99 loop 100 loop 101 -----out of while loop ------
*3,while ... else ..
while 后面的else 作用是指,当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句
count = 0 while count <= 5 : count += 1 print("Loop",count) else: print("循环正常执行完啦") print("-----out of while loop ------")
输出
Loop 1 Loop 2 Loop 3 Loop 4 Loop 5 Loop 6 循环正常执行完啦 -----out of while loop ------
如果执行过程中被break啦,就不会执行else的语句啦
count = 0 while count <= 5 : count += 1 if count == 3:break print("Loop",count) else: print("循环正常执行完啦") print("-----out of while loop ------")
输出
Loop 1 Loop 2 -----out of while loop ------
(3)for循环
for循环可以用来遍历某一对象,通俗点说,就是把这个循环中的第一个元素到最后一个元素依次访问一次。
基本循环
for 变量 in 可迭代对象:
do something
for 变量 in 可迭代对象:
do something
else:
do something
三 编 ascii:字母,数字,特殊字符。没有中文。一个字节一个字符。 2**8 = 256,所以,ASCII码最多只能表示 256 个符号。
万国码:
unicode :
A: 0000 0010 0000 0010 两个字节,表示一个字符。
中: 0000 0010 0000 0010 两个字节,表示一个字符。
升级:
A: 0000 0010 0000 0010 0000 0010 0000 0010 四个字节,表示一个字符。
中: 0000 0010 0000 0010 0000 0010 0000 0010 四个字节,表示一个字符。
缺点: 占空间,浪费资源。
utf-8:最少用一个字节,表示一个字符.
A: 0000 0010
欧洲:0000 00100000 0010
中文:0000 00100000 00100000 0010
gbk国标:
A: 0000 0010
中: 0000 0010 0000 0010
四 python2与python3 区别
Python2 :(1)源码重复,不规范:
(2)默认编码为ascii,不支持中文,加上#-*-coding:utf-8-*-即可;
(3)print‘123’与print (123)均可;
(4)在python2.x中raw-input=input (python3.x),
(5)python2中input只能输出int
Python3: (1)整合源码,更清晰简单优美;
(2)默认编码为utf -8;
(3)没有long类型;
(4)只能与print (123)
以上是关于python基础的主要内容,如果未能解决你的问题,请参考以下文章