想学python3_Python3学习之路(第一章)

Python入门

一、第一个python程序

创建一个hello.py 的文件内容如下:

1 #!/usr/bin/env python # 定义python解释器

2 #-*- coding:utf-8 -*- # 定义python字符编码,python2中必须定义,python3种默认就是utf-8,可以不定义

3 #author : guoshaolong # 作者,可选

4

5 print('hello world !') #程序内容

执行hello.py文件 python hello.py

注:在linux中需要给hello.py文件可执行权限chmod +x hello.py

好了,第一个python程序搞定。

二、注释

单行注释:# 被注释内容

多行注释:""" 被注释内容 """

三 、变量

1、声明变量

1 #!/usr/bin/env python

2 #-*- coding:utf-8 -*-

3 #author : guoshaolong

4

5 name = "guoshaolong"

上述代码声明了一个变量,变量名为:name,变量name的值为:"guoshaolong"

变量定义的规则:变量名必须是大小写英文、数字和下划线的组合,且不能用数字开头,不能使用python内置关键字

以下关键字不能声明为变量名

['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']

四、输入输出

1 #!/usr/bin/env python

2 #-*- coding: utf-8 -*-

3

4 #将用户输入的内容赋值给 name 变量

5 name = input("请输入用户名:")6

7 #打印输入的内容

8 print name

输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:

1 #!/usr/bin/env python

2 #-*- coding: utf-8 -*-

3

4 importgetpass5

6 #将用户输入的内容赋值给 name 变量

7 pwd = getpass.getpass("请输入密码:")8

9 #打印输入的内容

10 print pwd

五、流程控制

1、用户登陆验证

1 #!/usr/bin/env python

2 #-*- coding: tuf-8 -*-

3

4 #提示输入用户名和密码

5

6 #验证用户名和密码

7 #如果错误,则输出用户名或密码错误

8 #如果成功,则输出 欢迎,XXX!

9

10 importgetpass11

12 name = input('请输入用户名:')13 pwd = getpass.getpass('请输入密码:')14

15 if name == "guoshaolong" and pwd == "cmd":16 print "欢迎,guoshaolong!"

17 else:18 print "用户名和密码错误"

六、while循环

1、基本循环

1 while条件:2

3 #循环体

4

5 #如果条件为真,那么循环体则执行

6 #如果条件为假,那么循环体不执行

2、break

break用于退出所有循环

1 whileTrue:2 print "123"

3 break

4 print "456"

3、continue

continue用于退出当前循环,继续下一次循环

1 whileTrue:2 print "123"

3 continue

4 print "456"

七、练习题

1、使用while循环输入 1 2 3 4 5 6     8 9 10

1 #!/usr/bin/env python

2 #-*- coding:utf-8 -*-

3 #author : guoshaolong

4

5 #使用while循环输出1 2 3 4 5 6 8 9 10

6

7 i = 1

8 while i <= 10:9 if i == 7:10 i += 1

11 continue #跳出本次循环,开始下次循环

12 print(i)13 i += 1

View Code

2、求1-100的所有数的和

1 #!/usr/bin/env python

2 #-*- coding:utf-8 -*-

3 #author : guoshaolong

4

5 #求 1-100的所有数的和

6

7 j =08 i = 1

9 while i < 101:10 j +=i11 i += 1

12 print(j)

View Code

3、输出 1-100 内的所有奇数

1 #!/usr/bin/env python

2 #-*- coding:utf-8 -*-

3 #author : guoshaolong

4

5 #输出1-100 内错有的奇数

6 i = 1

7 while i < 101:8 if i % 2 == 1:9 print(i)10 i += 1

View Code

4、输出 1-100 内的所有偶数

1 #!/usr/bin/env python

2 #-*- coding:utf-8 -*-

3 #author : guoshaolong

4

5 #输出1-100 内所有的偶数

6 i = 1

7 while i < 101:8 if i % 2 ==0:9 print(i)10 i += 1

View Code

5、求1-2+3-4+5 ... 99的所有数的和

1 #!/usr/bin/env python

2 #-*- coding:utf-8 -*-

3 #author : guoshaolong

4

5 #求1-2+3-4+5... 99的所有数的和

6 j =07 i = 1

8 while i < 100:9 if i % 2 == 1:10 j +=i11 else:12 j -=i13 i += 1

14 print(j)

View Code

6、用户登陆(三次机会重试)

运算符

1、算数运算

2、比较运算

3、赋值运算

4、逻辑运算

5、成员运算

基本数据类型

1、数字

int(整型)

在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647

在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

2、布尔型

True或False

1 或 0

3、字符串

字符串常用功能:

1 “hello world”

创建

a = "shaolong"a= str('shaolong')

转换

age = 19new_age= str(age)

拼接

name = 'alex'gender= '女'new_str= name +genderprint(new_str)

格式化

name = '我叫郭少龙,性别:%s,我今年%s岁。' %('男',19,)print(name)

in 判断

content = "床前明月光,疑是地上霜。举头望明月,低头思故乡。"

if "月光" incontent:print('包含敏感字符')else:print(content)

移除空白

val = "guoshaolong"

print(val)#new_val = val.strip() # 左右#new_val = val.lstrip()# 左边#new_val = val.rstrip() # 右边#print(new_val)

分割

user_info = "shaolong|abc|123"

#v = user_info.split('|')#v = user_info.split('|',1)#v = user_info.rsplit(' ',1)#print(v)

长度

val = "morninggood"v=len(val)print(v)

索引

1 val = "morninggood"

2 v =val[0]3 print(v)4

5 val = input('>>>')6 i =07 while i

切片

name = '床前明月光,疑是地上霜。举头望明月,低头思故乡。'

print(name[0]) #床

print(name[0:2]) #床前

print(name[5:9]) #光,疑是

print(name[5:]) #光,疑是地上霜。举头望明月,低头思故乡。

print(name[5:-2]) #光,疑是地上霜。举头望明月,低头思故

print(name[-2:]) #乡。

4、列表

创建列表:

1 name_list = ['seven', 'eric']2 或3 name_list = list(['seven', 'eric'])

基本操作:

索引

1 val = a[0]

切片

1 a = ['a','b','c','d']2 v = a[0::2]3 print(v)4

追加

1 a = ['a','b','c','d']2 a.append('e')3 print(a)

插入

1 a = ['a','b','c','d']2 a.insert(0,'x')3 print(a)

删除

1 a = ['a','b','c','d','e']2 #a.remove('c')

3 dela[0]4 print(a)

长度

1 val = len(a)

切片

1 a = ['a','b','c','d']2 v = a[0::2]3 print(v)

循环

1 a = ['a','b','c','d','e']2 for item ina:3 print(item)4 #break

5 #continue

更新、修改

1 a = ['a','b','c','d','e']2 a[1] = 'x'

3 print(a)

in 判断

1 a = ['a','b','c','de']2 if 'd' ina:3 pass

4

5 if 'd' ina[0]:6 pass

5、元组

创建元祖:

1 ages = (11, 22, 33, 44, 55)2 或3 ages = tuple((11, 22, 33, 44, 55))

基本操作:

索引

1 print('ages[0]')

切片

循环

长度

包含

6、字典(无序)

创建字典:

1 person = {"name": "guoshaolong", 'age': 18}2 或3 person = dict({"name": "guoshaolong", 'age': 18})

常用操作:

索引

1 person = {"name": "guoshaolong", 'age': 18}2 n = person['name']3 print(n)

新增(无,增加;有,修改)

1 person = {"name": "guoshaolong", 'age': 18}2 person['age'] = 19

3 print(person)

删除

1 person = {"name": "guoshaolong", 'age': 18}2 del person['name']3 print(person)

循环

1 person = {"name": "guoshaolong", 'age': 18}2 for item inperson.keys():3 print(item)4 for item inperson.values():5 print(item)6 for key,val inperson.items():7 print(key,val)

长度

1 person = {"name": "guoshaolong", 'age': 18}2 n =len(person)3 print(n)

PS:循环,range,continue 和 break

练习题

一、元素分类

有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。

即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}

1 #!/usr/bin/env python

2 #-*- coding:utf-8 -*-

3 #author : guoshaolong

4

5

6 #a.元素分类

7 #有如下值集合

8 #v1 = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90],

9 #将所有大于 66 的值保存至字典的第一个key中,将小于66# 的值保存至第二个key的值中。

10 #即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}

11 #12 #v2 = {'k1': [], 'k2': []}

13

14 v1 = [11,22,33,44,55,66,77,88,99,90]15 k1 =[]16 k2 =[]17 v2 ={}18 for item inv1:19 if item < 66:20 k2.append(item)21 if item > 66:22 k1.append(item)23 v2['k1'] =k124 v2['k2'] =k225 print(v2)

View Code

1 goods =[2 {"name": "电脑", "price": 1999},3 {"name": "鼠标", "price": 10},4 {"name": "游艇", "price": 20},5 {"name": "美女", "price": 998},6 ]

五、用户交互,显示省市县三级联动的选择

1 dic ={2 "河北": {3 "石家庄": ["鹿泉", "藁城", "元氏"],4 "邯郸": ["永年", "涉县", "磁县"],5 },6 "河南": {7 "郑州":["中原区","上街区","金水区"],8 "开封":["老城区","吉利区","新安县"],9 },10 "山西": {11 "太原":["小店区","清徐县","阳曲县"],12 "临汾":["尧都区","洪洞县","古县"],13 }14 }

1 #!/usr/bin/env python

2 #-*- coding:utf-8 -*-

3 #author : guoshaolong

4

5 dic ={6 "河北": {7 "石家庄": ["鹿泉", "藁城", "元氏"],8 "邯郸": ["永年", "涉县", "磁县"],9 },10 "河南": {11 "郑州":["中原区","上街区","金水区"],12 "开封":["老城区","吉利区","新安县"],13 },14 "山西": {15 "太原":["小店区","清徐县","阳曲县"],16 "临汾":["尧都区","洪洞县","古县"],17 }18 }19 a =020 b =021 print('欢迎使用省、市、县 查询系统')22 for v indic.keys():23 print(v)24 while a < 3:25 inp1 = input('请输入要查询的省份:')26 if inp1 indic.keys():27 for i indic[inp1]:28 print(i)29 while b < 3:30 inp2 = input('请输入市:')31 if inp2 indic[inp1]:32 for j indic[inp1][inp2]:33 print(j)34 exit()35 else:36 print('没有你要查询的市,请重新输入:')37 b += 1

38 continue

39 else:40 print('没有你要查询的省,请重新输入:')41 a += 1

View Code

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值