python 入门学习 第一篇 安装与语法
1、安装 python 和 pycharm
1.1、下载安装包
https://www.python.org/downloads/
1.2、安装
默认安装路径:C:\python27
1.3、配置环境变量
【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
如:原来的值;C:\python27,切记前面有分号
1.2、pycharm安装
首先进入网站下载:点击打开链接(或自己输入网址https://www.python.org/downloads/)下载专业版本
破解方法:1、选择License server激活,然后填入:http://im.js.cn:8888 或 http://idea.java.sx/,然后点Activate激活即可
2、下载 http://idea.lanyus.com/jar/JetbrainsCrack-2.7-release-str.jar 并将 JetbrainsCrack-2.7-release-str.jar 放置到 D盘根目录。
在 Pycharm安装目录的\bin目录下找到 pycharm.exe.vmoptions 和 pycharm64.exe.vmoptions ,以文本格式打开并同时在两个文件最后追加 -javaagent:D:/JetbrainsCrack-2.7-release-str.jar,然后保存。
2、第一个程序
print("Hello World!")
3、变量
3.1、变量定义的规则: 变量名只能是 字母、数字或下划线的任意组合 变量名的第一个字符不能是数字
以下关键字不能声明为变量名
['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']
3.2、变量的赋值
于其他语言一样赋值都是“=”
4、注释用户输入
单行注释:#
多行注释:'''<被注释内容>'''
用户输入关键字:input,输入密码时如果想要不可见,需要利用getpass模块中的方法如
import getpass
Password = getpass.getpass("请输入密码:") 注:'':如果要输入的内容有空格单引号会把内容连接起来相反""是不会连接输入内容
6、数据运算
数值运算于比较运算
+:两个对象相加也可以用做字符串拼接
-:得到的值为负数或是一个数去减去另一个数
*:俩个数相乘或返回一个被重复若干次的字符串
/:x除以y
%:取模 返回除法的余数
**:幂 返回x的y次幂
//:整除返回得数整除部分
==:比较对象是否相等
!=:比较对象是否不相等
<>: 比较对象是否不相等
<: 小于
>: 大于
>=: 大于等于
<=: 小于等于
赋值运算:
=:把一个值给一个对象
+=:a += b 等于 a = a+b
-=:a-=b 等于 a = a-b 减肥赋值
*=:a*=b 等于 a = a*b 乘法赋值
/=:a/=b 等于 a = a/b 除法赋值
%=:a%=b 等于 a = c%b 取模赋值
**=:a**=b 等于 a = a**b 幂赋值
//=:a//=b 等于 a = a//b 取整赋值
逻辑运算:
and 布尔 “与”-如果x为false,x and y返回false,否则它返回y的计算值
or 布尔 “或”-如果x是true,它返回true,否则它返回y计算
not 布尔 “非”-如果x为true,返回false,如果x为false,它返回true
成员运算:
in 如果在制定的序列中找到值返回true,否则返回false
not in 如果在制定的序列中没有找到值返回true,否则返回false
身份运算:
is is是判断两个标识符是不是引用自一个对象 例:x is y,如果id(x)等于 id(y),is返回结果1
is not is not是判断两个标识符是不是引用自不同对象 例:x is not y,如果id(x)不等于 id(y)。 is not 返回结果1
位运算:
&:按位与运算符 例:(a&b)输出结果12,二进制解释:0000 1100
|:按位或运算符 例:(a|b)输出结果61,二进制解释:0011 1101
^: 按位异或运算符 例:(a^b)输出结果49,二进制解释:0011 00001
~: 按位取反运算符 例:(~a)输出结果-61,二进制解释:1100 0011 ,在一个有符号二进制数的补码形式
<<:左移动运算符 例:a<<2输出结果240,二进制解释:1111 0000
>>右移动运算符 例:a>>2输出结果15, 二进制解释:0000 1111
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#!/usr/bin/python a = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = 0
c = a & b; # 12 = 0000 1100
print "Line 1 - Value of c is " , c
c = a | b; # 61 = 0011 1101
print "Line 2 - Value of c is " , c
c = a ^ b; # 49 = 0011 0001 #相同为0,不同为1
print "Line 3 - Value of c is " , c
c = ~a; # -61 = 1100 0011
print "Line 4 - Value of c is " , c
c = a << 2 ; # 240 = 1111 0000
print "Line 5 - Value of c is " , c
c = a >> 2 ; # 15 = 0000 1111
print "Line 6 - Value of c is " , c
|
7、循环语句
十三、表达式if ... else
场景一、用户登陆验证
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# 提示输入用户名和密码 # 验证用户名和密码 # 如果错误,则输出用户名或密码错误 # 如果成功,则输出 欢迎,XXX! #!/usr/bin/env python # -*- coding: encoding -*- import getpass
name = raw_input ( '请输入用户名:' )
pwd = getpass.getpass( '请输入密码:' )
if name = = "alex" and pwd = = "cmd" :
print ( "欢迎,alex!" )
else :
print ( "用户名和密码错误" )
|
场景二、猜年龄游戏
在程序里设定好你的年龄,然后启动程序让用户猜测,用户输入后,根据他的输入提示用户输入的是否正确,如果错误,提示是猜大了还是小了
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
#!/usr/bin/env python # -*- coding: utf-8 -*- my_age = 28
user_input = int ( input ( "input your guess num:" ))
if user_input = = my_age:
print ( "Congratulations, you got it !" )
elif user_input < my_age:
print ( "Oops,think bigger!" )
else :
print ( "think smaller!" )
|
十四、表达式for loop
最简单的循环10次
1
2
3
4
5
6
|
#_*_coding:utf-8_*_ __author__ = 'Alex Li'
for i in range ( 10 ):
print ( "loop:" , i )
|
输出:
1
2
3
4
5
6
7
8
9
10
|
loop: 0
loop: 1
loop: 2
loop: 3
loop: 4
loop: 5
loop: 6
loop: 7
loop: 8
loop: 9
|
需求一:还是上面的程序,但是遇到小于5的循环次数就不走了,直接跳入下一次循环
1
2
3
4
|
for i in range ( 10 ):
if i< 5 :
continue #不往下走了,直接进入下一次loop
print ( "loop:" , i )
|
需求二:还是上面的程序,但是遇到大于5的循环次数就不走了,直接退出
1
2
3
4
|
for i in range ( 10 ):
if i> 5 :
break #不往下走了,直接跳出整个loop
print ( "loop:" , i )
|
十五、while loop
有一种循环叫死循环,一经触发,就运行个天荒地老、海枯石烂。
海枯石烂代码
1
2
3
4
5
|
count = 0
while True :
print ( "你是风儿我是沙,缠缠绵绵到天涯..." ,count)
count + = 1
|
其实除了时间,没有什么是永恒的,死loop还是少写为好
上面的代码循环100次就退出吧
回到上面for 循环的例子,如何实现让用户不断的猜年龄,但只给最多3次机会,再猜不对就退出程序。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#!/usr/bin/env python # -*- coding: utf-8 -*- my_age = 28
count = 0
while count < 3 :
user_input = int ( input ( "input your guess num:" ))
if user_input = = my_age:
print ( "Congratulations, you got it !" )
break
elif user_input < my_age:
print ( "Oops,think bigger!" )
else :
print ( "think smaller!" )
count + = 1 #每次loop 计数器+1
else :
print ( "猜这么多次都不对,你个笨蛋." )
|
上一篇: C# DBHelper类 参考
下一篇: 多线程死锁的产生原因以及如何避免