前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >从 Python到Tensorflow

从 Python到Tensorflow

作者头像
py3study
发布2020-01-08 15:59:51
6010
发布2020-01-08 15:59:51
举报
文章被收录于专栏:python3

从 Python到Tensorflow 学习之路(一)


最近毕业设计题目是研究对抗样本,要用tensorflow来搭建神经网络,因此python必不可少,这个不是一个传统的Python学习教程只是把学习Python过程中遇到的问题和经验记录下来(基于Python2.7),如果想要一步一步学习Python建议看下面的网站。

Python学习教程


python字符串

与C和C++不同,单引号和双引号在括起字符串的时候均可以。

代码语言:javascript
复制
print ('hello python')
print ("hello python")

可以在字符串前输入“`实现多行效果

代码语言:javascript
复制
print('''hello python
      python2
      pytnon3''')

变量赋值问题,请运行下面代码,理解赋值实际上是将一个变量指向另另一个变量所指向的数据

代码语言:javascript
复制
a = '123'
b = a
a = '456'
print a,b

运行结果实际上是456,123

Python中的list和tuple

list

  • len()函数可以获取list的长度
代码语言:javascript
复制
friendlist = ['Alice','Bob','Clark']
print len(friendlist)

  • list的索引依旧是从0开始,可以用负数nn来取倒数第|n||n|个元素
代码语言:javascript
复制
friendlist = ['Alice','Bob','Clark']
print friendlist[-1], friendlist[-2], friendlist[-3]

  • list可以通过append将新元素加入末尾,也可以通过insert方法插入指定位置,还可以通过pop进行删除(可加索引),也可以直接赋值给指定的索引位置
代码语言:javascript
复制
#append
friendlist = ['Alice','Bob', 'Clark']
friendlist.append('David')
print friendlist

#insert
friendlist.insert(1,'Evil')
print friendlist

#pop
friendlist.pop(3)
print friendlist

  • list中的元素可以是相同的数据类型也可以是不同的数据类型
代码语言:javascript
复制
my_list = ['Apple', 123, 3.2]
print my_list

tuple

  • 另外一种有序列表叫做tuple(元组),但是tuple初始化后不能进行修改,tuple是用小括号。
代码语言:javascript
复制
my_tuple = ('apple', 4, 3.14)
print my_tuple

  • tuple的不变是指每个元素的指向不变,但是tuple的每个元素可以发生变化,但是如果改变下面的整数或者浮点数将会报错
代码语言:javascript
复制
my_tuple = (['apple','banana'], 4, 3.14)
my_tuple[0][0] = 'orange'
my_tuple[0][1] = 'lemon'
print my_tuple

Python中的条件判断和循环

与C和C++不同没有else if只有elif

代码语言:javascript
复制
age = 12
if age >= 18:
    print 'adult'
elif age >= 6:
    print 'teenager'
else:
    print 'kid'

for…in循环

代码语言:javascript
复制
sum = 0
for x in range(101):
    sum += x
print sum

Python中的dict和set

dict类似于C++中的map,使用键和值存储,使用大括号(list用中括号,元组用小括号,dict则用大括号)

代码语言:javascript
复制
dictionary = {'Son':20, 'Father':50,'Mother':48}
print dictionary['Son']

当不确定键对应的值是否存在时,有下面两种方法:

代码语言:javascript
复制
#Use in
dictionary = {'Son':20, 'Father':50,'Mother':48}
print 'Sister' in dictionary 

#Use get method
print dictionary.get('Sister')

前者会输出False,而后者会输出None.可以在get函数参数指定想要得到的value(如何找不到对应的value,则输出预设的值)

可以利用pop方法删除一个key,其对应的value也将从dict中删去(dict的key是不可变对象)

代码语言:javascript
复制
dictionary = {'Son':20, 'Father':50,'Mother':48}
print dictionary
dictionary.pop('Father')
print dictionary 

set也是key的集合,但是不存储value.set中没有重复的key,重复的元素在set中会被自动过滤,这一点很方便.创建set需要使用一个list作为输入集合

代码语言:javascript
复制
my_set = set([1,2,2])
print my_set

set可以看作是数学上无须且无重复元素的集合,因此两个set可以做数学上的交和补操作

代码语言:javascript
复制
set_1 = set([1,2,3])
set_2 = set([2,3,4])

print set_1&set_2
print set_1|set_2

###list

Python中的函数

cmp函数,cmp(a,b)如果a>ba&gt;b返回1,如果a==ba==b返回0 如果a<ba&lt;b返回-1

代码语言:javascript
复制
print cmp(2,1)
print cmp(1,1)
print cmp(1,2)

Python中的函数可以起别名,函数名就是指向一个函数的引用,可以把函数名赋给一个变量

代码语言:javascript
复制
a = abs
print a(-1.5)

Python中的空函数,利用pass语句占位,让代码可以运行起来

代码语言:javascript
复制
def judge_age(age):
    if age >=18:
        pass
    elif age >= 12:
        print 'teenager'
    else:
        print 'kid'

judge_age(18)

Python中函数返回多个元素,实际上是返回一个tuple

代码语言:javascript
复制
#calculate a circle's area and length
def calculate_circle_parameters(radius):
    area = 3.14*radius*radius
    length = 6.28*radius
    return area,length
print calculate_circle_parameters(4)

使用默认参数降低调用函数的难度

代码语言:javascript
复制
#calculate a circle's area and length
def calculate_circle_parameters(radius,pi = 3.14):
    area = pi*radius*radius
    length = pi*radius
    return area,length
print calculate_circle_parameters(4)
print calculate_circle_parameters(4, pi=3.1415926)

使用默认参数调用函数时,默认参数必须指向不变的对象,因为Python函数在定义的时候默认参数已经被计算出来,当不断使用默认参数时,就会使用上一次的结果。

代码语言:javascript
复制
def add_list(L = []):
    L.append('0')
    return L
print add_list()
print add_list()

Python中的可变参数,在函数定义时,在参数前面加号,即可让参数接收任意个参数(接收一个tuple).如果本身就有一个tuple或者list,可以在list或者tuple前面加号来把其中的元素变成可变参数调用函数.

代码语言:javascript
复制
def calculate_sum(*num):
    result = 0
    for x in num:
        result += x
    return result
print calculate_sum()

print calculate_sum(1,2,3)

L = [2,3,4]
print calculate_sum(*L)

T = (4,5,6)
print calculate_sum(*T)

Python中关键字参数允许传入0个或者任意个含参数名的参数,这些关键字参数在函数内部自动组装成一个dict

代码语言:javascript
复制
def person(name,age,**kw):
    print 'name:',name, 'age:',age, 'others',kw

person('Bauer', 30)

person('Bauer', 30, city='Guangzhou')

kw = {'city':'Guangzhou','job':'teacher'}
person('Bauer',30,**kw)

Python中定义函数,有必选参数,默认参数,可变参数和关键字参数,这四种参数可以混用.但是*参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数*

代码语言:javascript
复制
def func(a,b,c=0,*args,**kw):
    print 'a = ', a, 'b = ',b, 'c = ',c ,'args = ',args, 'kw = ',kw

func(1,2)

func(1,2,c=3)

func(1,2,3,'a','b')

func(1,2,3,'a','b',x=99)

我们下期见!~


本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/09/08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 从 Python到Tensorflow 学习之路(一)
    • 最近毕业设计题目是研究对抗样本,要用tensorflow来搭建神经网络,因此python必不可少,这个不是一个传统的Python学习教程只是把学习Python过程中遇到的问题和经验记录下来(基于Python2.7),如果想要一步一步学习Python建议看下面的网站。
      • python字符串
        • 与C和C++不同,单引号和双引号在括起字符串的时候均可以。
        • 可以在字符串前输入“`实现多行效果
        • 变量赋值问题,请运行下面代码,理解赋值实际上是将一个变量指向另另一个变量所指向的数据
      • Python中的list和tuple
        • list
        • tuple
      • Python中的条件判断和循环
        • 与C和C++不同没有else if只有elif
        • for…in循环
      • Python中的dict和set
        • dict类似于C++中的map,使用键和值存储,使用大括号(list用中括号,元组用小括号,dict则用大括号)
        • 当不确定键对应的值是否存在时,有下面两种方法:
        • 可以利用pop方法删除一个key,其对应的value也将从dict中删去(dict的key是不可变对象)
        • set也是key的集合,但是不存储value.set中没有重复的key,重复的元素在set中会被自动过滤,这一点很方便.创建set需要使用一个list作为输入集合
        • set可以看作是数学上无须且无重复元素的集合,因此两个set可以做数学上的交和补操作
      • Python中的函数
        • cmp函数,cmp(a,b)如果a>ba&gt;b返回1,如果a==ba==b返回0 如果a<ba&lt;b返回-1
        • Python中的函数可以起别名,函数名就是指向一个函数的引用,可以把函数名赋给一个变量
        • Python中的空函数,利用pass语句占位,让代码可以运行起来
        • Python中函数返回多个元素,实际上是返回一个tuple
        • 使用默认参数降低调用函数的难度
        • 使用默认参数调用函数时,默认参数必须指向不变的对象,因为Python函数在定义的时候默认参数已经被计算出来,当不断使用默认参数时,就会使用上一次的结果。
        • Python中的可变参数,在函数定义时,在参数前面加号,即可让参数接收任意个参数(接收一个tuple).如果本身就有一个tuple或者list,可以在list或者tuple前面加号来把其中的元素变成可变参数调用函数.
        • Python中关键字参数允许传入0个或者任意个含参数名的参数,这些关键字参数在函数内部自动组装成一个dict
        • Python中定义函数,有必选参数,默认参数,可变参数和关键字参数,这四种参数可以混用.但是*参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数*
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档