簡體   English   中英

為什么只打印第一項

[英]Why is only the first item printing

想知道為什么當我在 for 循環之后寫 return arg 時,我得到了我放入的整個列表,但是當我返回 reverse 時,只有列表中的最后一個值我提供打印

def reverse_complement(**seqs):
   for arg in seqs.values():
      reverse=arg[::-1]
   return reverse

print(reverse_complement(a='CGTC', b='ATATAT', c='TATA', d='GCGTCGC'))

給出:

CGCTGCG

將結果存儲在list並返回list

用這個:

def reverse_complement(**seqs):
   results=[]
   for arg in seqs.values():
      reverse=arg[::-1]
      results.append(reverse)
   return results

print(reverse_complement(a='CGTC', b='ATATAT', c='TATA', d='GCGTCGC'))

['CTGC', 'ATAT', 'TATATA', 'CGCTGCG']

要返回整個序列(帶有鍵),請返回一個字典:

def reverse_complement(**seqs):
   reverse_dict = {}
   for key in seqs.keys():
      arg = seqs[key]
      reverse_dict[key] = arg[::-1]
   return reverse_dict

print(reverse_complement(a='CGTC', b='ATATAT', c='TATA', d='GCGTCGC')) 

這給出:

{'a': 'CTGC', 'c': 'ATAT', 'b': 'TATATA', 'd': 'CGCTGCG'}

作為輸出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM